Menu

#13 Collection error accessing non-existent monDeviceIO.WriteTime in ASE 15.5

v1.0_(example)
open
nobody
None
7
2017-03-02
2017-02-09
No

When running asemon 3.0.4a against an version 15.5 ASE server, the following error occurs (accessing the ASE server where data is being collected from) (Note, the output here has been sanitized for privacy reasons)

I think this is related to monDeviceIO which doesn't have WriteTime in 15.5. My conf/DevIO.xml and DevIO_V15.xml don't have WriteTime, but DevIO_V157.xml does. It must be getting used by accident:

...snip...
2017/02/09 12:04:10.905 SYBTEST_16K_DevIO     - Start thread.
...snip...
2017/02/09 12:34:10.956 Purge MONITORED_SYBSERVER     - Start thread.
2017/02/09 12:34:10.956 Purge MONITORED_SYBSERVER     - Try to connect to srv : ASEMON_SERVER
2017/02/09 12:34:10.964 Purge MONITORED_SYBSERVER     - Srv found in interfaces or SQL.INI file. Host=myhost Port=myport
2017/02/09 12:34:10.964 Purge MONITORED_SYBSERVER     - Using password from passwords file for 'ASEMON_SERVER.mylogin'
2017/02/09 12:34:10.983 Purge MONITORED_SYBSERVER     - Connected to archive server : ASEMON_SERVER Database : asemon
2017/02/09 12:34:11.083 Purge MONITORED_SYBSERVER     - Purge Thread : archive, error in loop. com.sybase.jdbc4.jdbc.SybSQLException: Invalid column name 'WriteTime'.

com.sybase.jdbc4.jdbc.SybSQLException: Invalid column name 'WriteTime'.

        at com.sybase.jdbc4.tds.Tds.processEed(Tds.java:4112)
        at com.sybase.jdbc4.tds.Tds.nextResult(Tds.java:3229)
        at com.sybase.jdbc4.jdbc.ResultGetter.nextResult(ResultGetter.java:78)
        at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:302)
        at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:284)
        at com.sybase.jdbc4.jdbc.SybStatement.updateLoop(SybStatement.java:2762)
        at com.sybase.jdbc4.jdbc.SybStatement.executeUpdate(SybStatement.java:2746)
        at com.sybase.jdbc4.jdbc.SybStatement.executeUpdate(SybStatement.java:596)
        at asemon_logger.PurgeThread.archiveIndic(PurgeThread.java:74)
        at asemon_logger.PurgeThread.run(PurgeThread.java:145)
2017/02/09 12:34:11.099 Purge MONITORED_SYBSERVER     - Purge Thread - archive,Closing connection
2017/02/09 12:34:11.100 Purge MONITORED_SYBSERVER     - Purge Thread : error in loop. java.lang.NullPointerException
java.lang.NullPointerException
        at asemon_logger.PurgeThread.run(PurgeThread.java:180)
2017/02/09 12:34:11.101 Purge MONITORED_SYBSERVER     - Purge Thread - Closing connection
2017/02/09 13:34:11.254 Purge MONITORED_SYBSERVER     - Purge Thread : archive, error in loop. com.sybase.jdbc4.jdbc.SybSQLException: Invalid column name 'WriteTime'.

com.sybase.jdbc4.jdbc.SybSQLException: Invalid column name 'WriteTime'.

        at com.sybase.jdbc4.tds.Tds.processEed(Tds.java:4112)
        at com.sybase.jdbc4.tds.Tds.nextResult(Tds.java:3229)
        at com.sybase.jdbc4.jdbc.ResultGetter.nextResult(ResultGetter.java:78)
        at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:302)
        at com.sybase.jdbc4.jdbc.SybStatement.nextResult(SybStatement.java:284)
        at com.sybase.jdbc4.jdbc.SybStatement.updateLoop(SybStatement.java:2762)
        at com.sybase.jdbc4.jdbc.SybStatement.executeUpdate(SybStatement.java:2746)
        at com.sybase.jdbc4.jdbc.SybStatement.executeUpdate(SybStatement.java:596)
        at asemon_logger.PurgeThread.archiveIndic(PurgeThread.java:74)
        at asemon_logger.PurgeThread.run(PurgeThread.java:145)
2017/02/09 13:34:11.256 Purge MONITORED_SYBSERVER     - Purge Thread - archive,Closing connection
2017/02/09 13:34:11.256 Purge MONITORED_SYBSERVER     - Purge Thread : error in loop. java.lang.NullPointerException
java.lang.NullPointerException
        at asemon_logger.PurgeThread.run(PurgeThread.java:180)
2017/02/09 13:34:11.257 Purge MONITORED_SYBSERVER     - Purge Thread - Closing connection

Discussion

  • Benjamin Slade

    Benjamin Slade - 2017-02-09

    This is low priority.

     
  • Jean-Paul Martin

    The bug is in the purge thread which aggregates some counters before purging data. It doesn't test ASE version.
    This is a regression introduced in V3
    The fix will be in V3.0.4b.
    You 'll have to truncate the MONITORED_SYBSERVER_TrendsCfg table before starting the new version
    Best regards
    JPM

     
  • Benjamin Slade

    Benjamin Slade - 2017-03-02

    Version 3.0.4b fo asemon_logger did fix the problem.

    Of course, I forgot to truncate <MONITORED_SYBSERVER>_TrendsCfg before starting 3.0.4b, I saw some heavy transaction log usage, but it seemed to run fine. In anycase, I truncated *_TrendsCfg and restarted asemon_logger just to be safe.

    I did see successful alter table *_WEvInf operations when 3.0.4b first ran.

    FYI, I'm also collecting data from an ASE 16 Sybase server now (in addition to ASE 15.5).

    Thanks
    Ben

     

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.