Unable to determine cause of DB crash - orientdb

I have hosted an instance of OreintDB on azure VM. This instance crashes or stops on its own after sometime. And I am unable to find the reason for that.
To find the reason I have enabled logs. But to no avail. The logs printed are insufficient to point to any problem. Following the is the orient-server-log.properties
# Specify the handlers to create in the root logger
# (all loggers are children of the root logger)
# The following creates two handlers
handlers = java.util.logging.ConsoleHandler, java.util.logging.FileHandler
# Set the default logging level for the root logger
.level = INFO
com.orientechnologies.level = INFO
com.orientechnologies.orient.server.distributed.level = INFO
# Set the default logging level for new ConsoleHandler instances
java.util.logging.ConsoleHandler.level = INFO
# Set the default formatter for new ConsoleHandler instances
java.util.logging.ConsoleHandler.formatter = com.orientechnologies.common.log.OAnsiLogFormatter
# Set the default logging level for new FileHandler instances
java.util.logging.FileHandler.level = INFO
# Naming style for the output file
java.util.logging.FileHandler.pattern=../log/orient-server.log
# Set the default formatter for new FileHandler instances
java.util.logging.FileHandler.formatter = com.orientechnologies.common.log.OLogFormatter
# Limiting size of output file in bytes:
java.util.logging.FileHandler.limit=10000000
# Number of output files to cycle through, by appending an
# integer to the base file name:
java.util.logging.FileHandler.count=10
Following is the contents of one of the log file generated named orient-server.log.0:
XXXX-XX-XX 05:10:06:517 INFO Loading configuration from: /opt/orientdb/config/orientdb-server-config.xml... [OServerConfigurationLoaderXml]
XXXX-XX-XX 05:10:06:917 INFO OrientDB Server v2.2.13 (build 2.2.x#r90d7caa1e4af3fad86594e592c64dc1202558ab1; 2016-11-15 12:04:05+0000) is starting up... [OServer]
XXXX-XX-XX 05:10:06:921 INFO Databases directory: /opt/orientdb/databases [OServer]
XXXX-XX-XX 05:10:07:010 INFO OrientDB auto-config DISKCACHE=4,428MB (heap=491MB direct=524,288MB os=6,967MB) [orientechnologies]
XXXX-XX-XX 05:10:07:719 INFO Listening binary connections on 0.0.0.0:2424 (protocol v.36, socket=default) [OServerNetworkListener]
XXXX-XX-XX 05:10:07:730 INFO Listening http connections on 0.0.0.0:2480 (protocol v.10, socket=default) [OServerNetworkListener]
XXXX-XX-XX 05:10:07:761 INFO Installing dynamic plugin 'studio-2.2.zip'... [OServerPluginManager]
XXXX-XX-XX 05:10:07:765 INFO ODefaultPasswordAuthenticator is active [ODefaultPasswordAuthenticator]
XXXX-XX-XX 05:10:07:766 INFO OServerConfigAuthenticator is active [OServerConfigAuthenticator]
XXXX-XX-XX 05:10:07:766 INFO OSystemUserAuthenticator is active [OSystemUserAuthenticator]
XXXX-XX-XX 05:10:07:805 INFO Installed GREMLIN language v.2.6.0 - graph.pool.max=50 [OGraphServerHandler]
XXXX-XX-XX 05:10:07:805 INFO [OVariableParser.resolveVariables] Error on resolving property: distributed [orientechnologies]
XXXX-XX-XX 05:10:07:808 WARNI Authenticated clients can execute any kind of code into the server by using the following allowed languages: [sql] [OServerSideScriptInterpreter]
XXXX-XX-XX 05:10:07:810 INFO OrientDB Studio available at http://XXX.XXX.XXX.XXX:2480/studio/index.html [OServer]
XXXX-XX-XX 05:10:07:810 INFO OrientDB Server is active v2.2.13 (build 2.2.x#r90d7caa1e4af3fad86594e592c64dc1202558ab1; 2016-11-15 12:04:05+0000).
Other log files have similar content.
I want some pointer of what could be the issue or some other debugging method. Crash report, DB connection reports, etc. which can help me determine the underlying problem.
I am using OrientDB v2.2.13

Related

Orientdb login fails all the sudden

I've been using orientdb-2.2.19 for a while with no problem. After restarting my computer today the http://xxx.xxx.x.x:2480/studio/index.html#/ login page does not let me log into my database. The bin/server.sh command does not show any error:
GRAPH DATABASE
`` `.
`` orientdb.com
`
/hdd/orientdb-2.2.19
removing old pid file /hdd/orientdb-2.2.19/bin/orient.pid
2018-01-04 12:40:30:080 INFO Loading configuration from: /hdd/orientdb-2.2.19/config/orientdb-server-config.xml... [OServerConfigurationLoaderXml]
2018-01-04 12:40:30:250 INFO OrientDB Server v2.2.19 (build 1758205114667e967bba32d61adda4022bbad08e) is starting up... [OServer]
2018-01-04 12:40:30:253 INFO Databases directory: /hdd/orientdb-2.2.19/databases [OServer]
2018-01-04 12:40:30:297 INFO OrientDB auto-config DISKCACHE=11,969MB (heap=1,963MB direct=524,288MB os=15,980MB) [OMemoryAndLocalPaginatedEnginesInitializer]
2018-01-04 12:40:30:509 INFO Listening binary connections on 0.0.0.0:2424 (protocol v.36, socket=default) [OServerNetworkListener]
2018-01-04 12:40:30:512 INFO Listening http connections on 0.0.0.0:2480 (protocol v.10, socket=default) [OServerNetworkListener]
2018-01-04 12:40:30:519 INFO Installing dynamic plugin 'orientdb-studio-2.2.19.zip'... [OServerPluginManager]
2018-01-04 12:40:30:521 INFO ODefaultPasswordAuthenticator is active [ODefaultPasswordAuthenticator]
2018-01-04 12:40:30:522 INFO OServerConfigAuthenticator is active [OServerConfigAuthenticator]
2018-01-04 12:40:30:523 INFO OSystemUserAuthenticator is active [OSystemUserAuthenticator]
2018-01-04 12:40:30:537 INFO Installed GREMLIN language v.2.6.0 - graph.pool.max=50 [OGraphServerHandler]
2018-01-04 12:40:30:537 INFO [OVariableParser.resolveVariables] Error on resolving property: distributed [orientechnologies]
2018-01-04 12:40:30:540 WARNI Authenticated clients can execute any kind of code into the server by using the following allowed languages: [sql] [OServerSideScriptInterpreter]
2018-01-04 12:40:30:541 INFO OrientDB Studio available at http://xxx.xxx.x.x:2480/studio/index.html [OServer]
2018-01-04 12:40:30:541 INFO OrientDB Server is active v2.2.19 (build 1758205114667e967bba32d61adda4022bbad08e). [OServer]
I can log into the default "GreatfulDeadConcerts" database with the same username/password though. So I know I'm using the correct username and pass.
What could cause this problem?
On possible thing is that I copied the entire orientdb-2.2.19 folder from another directory into the one I'm using now. But this did not cause any problem for almost three weeks. So not sure if this is the real reason.
Update:
As suggested, I setup a new user and password but the login still fails. This seems to be a more serious problem than just a login issue.
I ran this command:
orientdb>CONNECT plocal:../databases/Test HUser HPass
which gave me the following error:
Error: java.lang.NumberFormatException: For input string: "public"

GraphML inport into Titan

I'm new in Titan world. I would like to import data stored in GraphML file into a database.
I downloaded titan-1.0.0-hadoop1
I run ./titan.sh
I run ./gremlin.sh
In Gremlin console I wrote:
:remote connect tinkerpop.server ../conf/remote.yaml
Next, I wrote:
graph.io(IoCore.graphml()).readGraph("/tmp/file.graphml")
I got message:
No such property: graph for class: groovysh_evaluate
Could you help me?
IMO the most interesting logs from gremlin-server.log:
84 [main] INFO org.apache.tinkerpop.gremlin.server.GremlinServer - Configuring Gremlin Server from conf/gremlin-server/gremlin-server.yaml
158 [main] INFO org.apache.tinkerpop.gremlin.server.util.MetricManager - Configured Metrics ConsoleReporter configured with report interval=180000ms
160 [main] INFO org.apache.tinkerpop.gremlin.server.util.MetricManager - Configured Metrics CsvReporter configured with report interval=180000ms to fileName=/tmp/gremlin-server-metrics.csv
196 [main] INFO org.apache.tinkerpop.gremlin.server.util.MetricManager - Configured Metrics JmxReporter configured with domain= and agentId=
197 [main] INFO org.apache.tinkerpop.gremlin.server.util.MetricManager - Configured Metrics Slf4jReporter configured with interval=180000ms and loggerName=org.apache.tinkerpop.gremlin.server.Settings$Slf4jReporterMetrics
1111 [main] WARN org.apache.tinkerpop.gremlin.server.GremlinServer - Graph [graph] configured at [conf/gremlin-server/titan-berkeleyje-server.properties] could not be instantiated and will not be available in Gremlin Server. GraphFactory message: GraphFactory could not instantiate this Graph implementation [class com.thinkaurelius.titan.core.TitanFactory]
java.lang.RuntimeException: GraphFactory could not instantiate this Graph implementation [class com.thinkaurelius.titan.core.TitanFactory]
...
1113 [main] INFO org.apache.tinkerpop.gremlin.server.util.ServerGremlinExecutor - Initialized Gremlin thread pool. Threads in pool named with pattern gremlin-*
1499 [main] INFO org.apache.tinkerpop.gremlin.groovy.engine.ScriptEngines - Loaded nashorn ScriptEngine
2044 [main] INFO org.apache.tinkerpop.gremlin.groovy.engine.ScriptEngines - Loaded gremlin-groovy ScriptEngine
2488 [main] WARN org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor - Could not initialize gremlin-groovy ScriptEngine with scripts/empty-sample.groovy as script could not be evaluated - javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: graph for class: Script1
2488 [main] INFO org.apache.tinkerpop.gremlin.server.util.ServerGremlinExecutor - Initialized GremlinExecutor and configured ScriptEngines.
2581 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Could not instantiate configured serializer class - org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0 - it will not be available. There is no graph named [graph] configured to be used in the useMapperFromGraph setting
2582 [main] INFO org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-stringd with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
2719 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Could not instantiate configured serializer class - org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0 - it will not be available. There is no graph named [graph] configured to be used in the useMapperFromGraph setting
2720 [main] WARN org.apache.tinkerpop.gremlin.server.AbstractChannelizer - Could not instantiate configured serializer class - org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0 - it will not be available. There is no graph named [graph] configured to be used in the useMapperFromGraph setting
...
You need to create a graph. the graph keyword isn't declared anywhere in your script.
This is briefly covered in the Titan Server documentation, but it is easily overlooked.
The :> is the "submit" command which sends the Gremlin on that line to the currently active remote.
In step 5, you need to submit your script command to the remote server. In the Gremlin Console, you do this by starting your command with :submit or :> for shorthand.
:> graph.io(IoCore.graphml()).readGraph("/tmp/file.graphml")
If you don't submit the script to the remote server, the Gremlin Console will attempt to process the script within the console's JVM. graph is not defined locally, and that is why you saw the error in step 6.
Update: Based on your gremlin-server.log it looks like the issue is that the user that starts Titan with ./bin/titan.sh start doesn't have the appropriate file permissions to create the directory (db/berkeley) used by the default graph configuration (titan-berkeleyje-server.properties). Try updating the file permissions on the $TITAN_HOME directory.

OrientDB & .Net driver: Unable to read data from the transport connection

Getting error while reading network stream from a successful socket connection. PL see the debug log from orient DB:
2016-04-08 18:08:51:590 WARNI Not enough physical memory available for DISKCACHE: 1,977MB (heap=494MB). Set lower Maximum Heap (-Xmx setting on JVM) and restart OrientDB. Now
running with DISKCACHE=256MB [orientechnologies]
2016-04-08 18:08:51:606 INFO OrientDB config DISKCACHE=-566MB (heap=494MB os=1,977MB disk=16,656MB) [orientechnologies]
2016-04-08 18:08:51:809 INFO Loading configuration from: C:/inetpub/wwwroot/orientdb-2.1.5/config/orientdb-server-config.xml... [OServerConfigurationLoaderXml]
2016-04-08 18:08:52:292 INFO OrientDB Server v2.1.5 (build 2.1.x#r${buildNumber}; 2015-10-29 16:54:25+0000) is starting up... [OServer]
2016-04-08 18:08:52:370 INFO Databases directory: C:\inetpub\wwwroot\orientdb-2.1.5\databases [OServer]
2016-04-08 18:08:52:495 INFO Listening binary connections on 127.0.0.1:2424 (protocol v.32, socket=default) [OServerNetworkListener]
2016-04-08 18:08:52:511 INFO Listening http connections on 127.0.0.1:2480 (protocol v.10, socket=default) [OServerNetworkListener]
2016-04-08 18:08:52:573 INFO Installing dynamic plugin 'studio-2.1.zip'... [OServerPluginManager]
2016-04-08 18:08:52:838 INFO Installing GREMLIN language v.2.6.0 - graph.pool.max=50 [OGraphServerHandler]
2016-04-08 18:08:52:838 INFO [OVariableParser.resolveVariables] Error on resolving property: distributed [orientechnologies]
2016-04-08 18:08:52:854 INFO Installing Script interpreter. WARN: authenticated clients can execute any kind of code into the server by using the following allowed languages:
[sql] [OServerSideScriptInterpreter]
2016-04-08 18:08:52:854 INFO OrientDB Server v2.1.5 (build 2.1.x#r${buildNumber}; 2015-10-29 16:54:25+0000) is active. [OServer]
2016-04-08 18:08:57:986 INFO /127.0.0.1:49243 - Connected [OChannelBinaryServer]
2016-04-08 18:08:58:002 INFO /127.0.0.1:49243 - Writing short (2 bytes): 32 [OChannelBinaryServer]
2016-04-08 18:08:58:002 INFO /127.0.0.1:49243 - Flush [OChannelBinaryServer]
2016-04-08 18:08:58:002 INFO /127.0.0.1:49243 - Reading byte (1 byte)... [OChannelBinaryServer]
Using OrientDB .Net binary (C# driver) in Windows Vista. This was working fine until recently. Not sure what broke it...
Resetting TCP/IP using NetShell utility did not help.
Any help is highly appreciated.
The problem was with the AVG anti-virus program that is blocking the socket. Added an exception in the program for localhost to fix the problem.

What causes this OrientDB startup error?

I just started getting this error when running Orient. Any advise what to do?
2015-11-10 08:09:52:003 INFO OrientDB auto-config DISKCACHE=489MB (heap=491MB os=52,339MB disk=978MB) [orientechnologies]
2015-11-10 08:09:52:111 INFO Loading configuration from: /home/ubuntu/workspace/orient215/config/orientdb-server-config.xml... [OServerConfigurationLoaderXml]
2015-11-10 08:09:52:391 INFO OrientDB Server v2.1.5 (build 2.1.x#r; 2015-10-29 16:54:25+0000) is starting up... [OServer]
2015-11-10 08:09:52:430 INFO Databases directory: /home/ubuntu/workspace/orient215/databases [OServer]
2015-11-10 08:09:52:484 INFO Listening binary connections on 0.0.0.0:2424 (protocol v.32, socket=default) [OServerNetworkListener]Exception in thread "main" java.lang.NegativeArraySizeException
at com.orientechnologies.orient.server.network.OServerNetworkListener.getPorts(OServerNetworkListener.java:113)
at com.orientechnologies.orient.server.network.OServerNetworkListener.listen(OServerNetworkListener.java:305)
at com.orientechnologies.orient.server.network.OServerNetworkListener.<init>(OServerNetworkListener.java:79)
at com.orientechnologies.orient.server.OServer.activate(OServer.java:334)
at com.orientechnologies.orient.server.OServerMain.main(OServerMain.java:41)
Well I deleted this question quickly because I found my own answer. But on second thought if someone else makes a typo in the port specification in orientdb-server-config.xml, then they might find this post useful

Tomcat configuration using embedded ActiveMQ JMS

I have Tomcat 7.0.42 and ActiveMQ 5.10 and have added the following resources to my context.xml file:
<Resource
auth="Container"
brokerName="MyActiveMQBrokerXML"
description="JMS Connection Factory"
factory="org.apache.activemq.jndi.JNDIReferenceFactory"
name="jms/ConnectionFactory"
type="org.apache.activemq.ActiveMQConnectionFactory"
useEmbeddedBroker="true"
brokerURL="vm://localhost?brokerConfig=xbean:activemq.xml"
/>
When starting Tomcat via is built-in startup script I get the following in the console out-put.
2015-01-27 09:49:24,064 [localhost-startStop-1] INFO org.apache.activemq.store.kahadb.plist.PListStoreImpl- PListStore:[C:\tomcat\apache-tomcat-7.0.57\bin\acti vemq-data\MyActiveMQBroker\tmp_storage] started
2015-01-27 09:49:24,068 [localhost-startStop-1] INFO org.apache.activemq.broker.BrokerService- Using Persistence Adapter: KahaDBPersistenceAdapter[C:\tomcat\ap ache-tomcat-7.0.57\bin\activemq-data\MyActiveMQBroker\KahaDB]
2015-01-27 09:49:24,471 [localhost-startStop-1] INFO org.apache.activemq.store.kahadb.MessageDatabase- KahaDB is version 5
2015-01-27 09:49:24,491 [localhost-startStop-1] INFO org.apache.activemq.store.kahadb.MessageDatabase- Recovering from the journal ...
2015-01-27 09:49:24,492 [localhost-startStop-1] INFO org.apache.activemq.store.kahadb.MessageDatabase- Recovery replayed 3 operations from the journal in 0.01 seconds.
2015-01-27 09:49:24,663 [localhost-startStop-1] INFO org.apache.activemq.broker.BrokerService- Apache ActiveMQ 5.10.0 (MyActiveMQBroker, ID:Jacob-PC-55865-1422 373764525-0:1) is starting
2015-01-27 09:49:24,707 [localhost-startStop-1] INFO org.apache.activemq.broker.TransportConnector- Connector vm://localhost?brokerConfig=xbean:activemq.xml st arted
2015-01-27 09:49:24,707 [localhost-startStop-1] INFO org.apache.activemq.broker.BrokerService- Apache ActiveMQ 5.10.0 (MyActiveMQBroker, ID:Jacob-PC-55865-1422 373764525-0:1) started
2015-01-27 09:49:24,708 [localhost-startStop-1] INFO org.apache.activemq.broker.BrokerService- For help or more information please see: http://activemq.apache. org
2015-01-27 09:49:24,711 [localhost-startStop-1] ERROR org.apache.activemq.broker.BrokerService- Memory Usage for the Broker (1024 mb) is more than the maximum a vailable for the JVM: 247 mb - resetting to 70% of maximum available: 173 mb
2015-01-27 09:49:24,728 [localhost-startStop-1] WARN org.apache.activemq.broker.BrokerRegistry- Broker localhost not started so using MyActiveMQBroker instead Jan 27, 2015 9:49:24 AM org.apache.catalina.startup.HostConfig deployDirectory
It appears to me that tomcat is not looking for the activemq.xml file or is at least not using it. This exact configuration works if I start tomcat through eclipse, but that is not a viable option for a production system.
I found that if deploying into production you have to use the absolute path to the file to get Tomcat to find the activemq.xml file. Although using the relative path is supposed to work, I could never get it to.
brokerURL="vm://localhost?brokerConfig=xbean:activemq.xml"
Supposedly only works if you've added to 'activemq.xml' to the class path. Note the presence of 'file' in 'xbean:file:/some/path/activemq.xml'.
<Resource id="MyJmsResourceAdapter" type="ActiveMQResourceAdapter">
BrokerXmlConfig = xbean:file:/usr/share/apache-tomee-plus-8.0.0-M1/conf/activemq.xml
ServerUrl = tcp://localhost:61616
</Resource>