Issue #2914: ODB Server tries to write a log file to a weird location

Type: DiscussionPriority: NormalStatus: FixedReplies: 5
#1

We are testing client-server architecture.

Our server has the following config:

        >
                 path="$temp" threshold="64mb" />
                 inactivity-timeout="0" />
                 size="0" user="true" password="true" />
                 path="$objectdb/log/odb" max="8mb" stdout="false" stderr="false" />
                 path="$objectdb/log/odb/archive/" retain="90" />
                 name="*" level="info" />
        >

Client has the following config:

        <!-- Shared configuration-->
        >
                 path="$temp" threshold="64mb" />
                 inactivity-timeout="0" />
                 size="0" user="true" password="true" />
                 path="$objectdb/log/odb-client" max="8mb" stdout="false" stderr="false" />
                 path="$objectdb/log/odb-client/archive/" retain="90" />
                 name="*" level="info" />
        >

 

However sometimes happens, that the Server tries to create log file in location: $objectdb/log/ for which we don't have explanation. In our situation this ends with Permission denied, as the ODB Server doesn't have permission to write to that directory and whole application fails.

Sometimes it helped to run a doctor above database files and it stopped doing it. Sometimes it doesn't help.

 

 

 

#2

The default location of the log file is $objectdb/log/ and it is used when no other location is specified (e.g. a configuration file with another location is not found). There some specific cases in which the default location is used, even when another location is specified (e.g. if there is an error before the configuration file can be read). Please check if this happens only for specific log messages or in specific situations.

ObjectDB Support
#3

We don't know yet what are the specifics of the issue.
The issue for which Doctor did not fixed the issue produces only following Message:


cat odb20240717.log
------------------------------------------------------------------------------------------------------------------------

[2024-07-17 15:15:00 #1 store]
RetrievalTask.reportPrimaryResult0: page#5592391, reader.getPos() = 0

 

#4

Regarding the last log message, updating to build 2.9.0_02 may provide more information.

ObjectDB Support
#5

Ok, so apparently it associates with our different issue discussed in https://www.objectdb.com/forum/2915

Now the log outputs:
 

------------------------------------------------------------------------------------------------------------------------

[2024-07-17 21:15:45 #1 store]
RetrievalTask.reportPrimaryResult0: page#5592399, reader.getPos() = 0java.lang.ArrayIndexOutOfBoundsException: arraycopy: last destination index 2155981072 out of bounds for byte[2147483639]
    at java.base/java.lang.System.arraycopy(Native Method)
    at com.objectdb.o.BYW.h(BYW.java:708)
    at com.objectdb.o.BYR.h(BYR.java:684)
    at com.objectdb.o.RCO.YZ(RCO.java:166)
    at com.objectdb.o.RTT.r(RTT.java:267)
    at com.objectdb.o.RTT.q(RTT.java:238)
    at com.objectdb.o.RST.l(RST.java:183)
    at com.objectdb.o.RTT.g(RTT.java:147)
    at com.objectdb.o.RTT.o(RTT.java:167)
    at com.objectdb.o.RST.n(RST.java:123)
    at com.objectdb.o.PGT.j(PGT.java:155)
    at com.objectdb.o.RST.k(RST.java:95)
    at com.objectdb.o.RTT.g(RTT.java:145)
    at com.objectdb.o.RTT.o(RTT.java:167)
    at com.objectdb.o.RST.n(RST.java:123)
    at com.objectdb.o.PGT.j(PGT.java:155)
    at com.objectdb.o.RST.k(RST.java:95)
    at com.objectdb.o.RTT.g(RTT.java:145)
    at com.objectdb.o.TSK.b(TSK.java:146)
    at com.objectdb.o.TSK.c(TSK.java:96)
    at com.objectdb.o.TSM.a(TSM.java:88)
    at com.objectdb.o.RTT.o(RTT.java:165)
    at com.objectdb.o.RST.n(RST.java:123)
    at com.objectdb.o.PGT.j(PGT.java:155)
    at com.objectdb.o.RST.k(RST.java:95)
    at com.objectdb.o.RTT.g(RTT.java:145)
    at com.objectdb.o.TSK.b(TSK.java:146)
    at com.objectdb.o.TSK.c(TSK.java:96)
    at com.objectdb.o.TSM.a(TSM.java:88)
    at com.objectdb.o.RTT.o(RTT.java:165)
    at com.objectdb.o.RST.n(RST.java:123)
    at com.objectdb.o.PGT.j(PGT.java:155)
    at com.objectdb.o.RST.k(RST.java:95)
    at com.objectdb.o.RTT.g(RTT.java:145)
    at com.objectdb.o.TSK.b(TSK.java:146)
    at com.objectdb.o.TSK.c(TSK.java:96)
    at com.objectdb.o.MST.ax(MST.java:635)
    at com.objectdb.o.MST.ZN(MST.java:591)
    at com.objectdb.o.WRA.ZN(WRA.java:281)
    at com.objectdb.o.WRA.ZN(WRA.java:281)
    at com.objectdb.o.WSN.ZN(WSN.java:348)
    at com.objectdb.o.STC.p(STC.java:424)
    at com.objectdb.o.SHN.U(SHN.java:462)
    at com.objectdb.o.SHN.x(SHN.java:151)
    at com.objectdb.o.HND.run(HND.java:134)
    at java.base/java.lang.Thread.run(Thread.java:1583)
#6

Please try build 2.9.0_03 that should fix this issue.

ObjectDB Support

Reply