Comments (7)
I can trace back the origins of failure of requests from 08 Feb . Initially it was a connection timeout issue - , that would have triggered. Attached detailed log of origins elastic-execptions-origins.txt.
time=2022-02-08T09:55:41+0000 level="�[1;31mERROR�[m" loggerName=iudx.resource.server.database.archives.ElasticClient message="Timeout connecting to [elasticsearch-mcd-headless.elastic.svc.cluster.local/10.42.153.136:9200]" source=rs sourceUrl=https://rs.iudx.org.in exception=""
022-02-08 15:25:41
ERROR [InternalHttpAsyncClient:66] 2022-02-08 09:55:41,032 - I/O reactor terminated abnormally
2022-02-08 15:25:41
java.lang.StringIndexOutOfBoundsException: begin -1, end 0, length 26
2022-02-08 15:25:41
at java.base/java.lang.String.checkBoundsBeginEnd(Unknown Source)
2022-02-08 15:25:41
at java.base/java.lang.String.substring(Unknown Source)
2022-02-08 15:25:41
at iudx.resource.server.database.archives.ElasticClient$2.onFailure(ElasticClient.java:161)
2022-02-08 15:25:41
at org.elasticsearch.client.RestClient$FailureTrackingResponseListener.onDefinitiveFailure(RestClient.java:598)
2022-02-08 15:25:41
at org.elasticsearch.client.RestClient$1.failed(RestClient.java:359)
2022-02-08 15:25:41
at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:137)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.executionFailed(DefaultClientExchangeHandlerImpl.java:101)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.AbstractClientExchangeHandler.failed(AbstractClientExchangeHandler.java:426)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.AbstractClientExchangeHandler.connectionRequestFailed(AbstractClientExchangeHandler.java:348)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.AbstractClientExchangeHandler.access$100(AbstractClientExchangeHandler.java:62)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.AbstractClientExchangeHandler$1.failed(AbstractClientExchangeHandler.java:392)
2022-02-08 15:25:41
at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:137)
2022-02-08 15:25:41
at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager$1.failed(PoolingNHttpClientConnectionManager.java:316)
2022-02-08 15:25:41
at org.apache.http.concurrent.BasicFuture.failed(BasicFuture.java:137)
2022-02-08 15:25:41
at org.apache.http.nio.pool.RouteSpecificPool.timeout(RouteSpecificPool.java:169)
2022-02-08 15:25:41
at org.apache.http.nio.pool.AbstractNIOConnPool.requestTimeout(AbstractNIOConnPool.java:628)
2022-02-08 15:25:41
at org.apache.http.nio.pool.AbstractNIOConnPool$InternalSessionRequestCallback.timeout(AbstractNIOConnPool.java:894)
2022-02-08 15:25:41
at org.apache.http.impl.nio.reactor.SessionRequestImpl.timeout(SessionRequestImpl.java:184)
2022-02-08 15:25:41
at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processTimeouts(DefaultConnectingIOReactor.java:214)
2022-02-08 15:25:41
at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:158)
2022-02-08 15:25:41
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:351)
2022-02-08 15:25:41
at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:221)
2022-02-08 15:25:41
at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64)
2022-02-08 15:25:41
at java.base/java.lang.Thread.run(Unknown Source)
2022-02-08 15:25:41
time=2022-02-08T09:55:41+0000 level="�[1;31mERROR�[m" loggerName=iudx.resource.server.database.archives.ElasticClient message="Timeout connecting to [elasticsearch-mcd-headless.elastic.svc.cluster.local/10.42.153.136:9200]" source=rs sourceUrl=https://rs.iudx.org.in exception=""
- The above timeout issue -> made the request fail and goto
OnFailure method
-> which in turn triggered string exception -> which triggered reactor stop --> resulting in failure in subsequent requests -->OnFailure method
--> ...
from iudx-resource-server.
It was for all the requests made to the Elastic client @abhi4578
Looping @rraks
from iudx-resource-server.
The reason like for alternate query suceeding is, in a pod two verticle instances of a service/verticle is deployed by default. So this issue trigger would have happened in one of verticle instance of database service/verticle but not the other.
from iudx-resource-server.
Handling the string out of bounds exception should solve the problem. at In current-deployment branch, at the code
and at current master branch at
from iudx-resource-server.
but can any other exceptions happen in that method? if so can have a generalized exception catacher inside failure method, so that no exception leave onFailure method .
from iudx-resource-server.
This also should be fixed in other parts of elastic client.
This issue might happen in other IUDX servers which uses elastic client - file-server, catalogue. It needs to be checked the against the possible methods and fixed appropriately.
from iudx-resource-server.
fixed and resolved
from iudx-resource-server.
Related Issues (20)
- getting "invalidTemporalParam" for temporal query of more then 10 days
- Issues related to metering HOT 2
- [Performance] ImmuDB queries are take longer than expected response time HOT 2
- [API Documentation]
- [Response Body] API Response
- [invalidAuthorizationToken] Getting auth error when trying to access public resource HOT 2
- [Input Validation] Date-time validation in async API flow.
- [Update] Use Elasticsearch java-api client instead of High level elastic client. HOT 1
- [Bug] Issue with default time filter. HOT 1
- Need More Information to Configure Resource Server HOT 4
- Is there any missing configuration need to be perform to setup resource server? HOT 7
- Query Regrding Stream/Push Data to IUDX HOT 1
- Single Deployer file for both clustered and non-clustered deployment in all api servers
- Make cat server items API path configurable HOT 2
- Version bump for release 4.5.0 HOT 1
- Metering in subscription API [GET, DELETE] HOT 1
- Query regarding Attribute search API of Resource Server HOT 6
- Procedure to Avail Own Proxy Resource Server on the IUDX Platform HOT 3
- [Input Validation] Register Adapter
- Enhancement of Data Access Limits HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iudx-resource-server.