Ajax error: The structure table contains obsolete data...

User c91b2283c1

17-02-2010 22:03:35

Hi,


I imported some data to a MySQL database via Instant JChem and am working to learn how to use Web Services since this data will be accessed via a web site. I can access the data just fine through Instant JChem.


I had to modify the schema prior to importing to allow empty structures as many of the entries currently do not have structures associated with them.


When I start up the Web Services using /tomcat/bin/startup.sh I am able to load up the Ajax demo application at http://dev:8180/ajax/. I log in at the username and password prompt and am then presented with the following error popup:


The structure table contains obsolete data. Please regenerate the table.



  1. Why am I unable to to access this data?

  2. What does it mean for a table to have obsolete data?

  3. How can I regenerate the table?


Thanks,


-John David

User c91b2283c1

17-02-2010 22:34:54

Hi,


I found this error addressed in the following FAQ entry: https://www.chemaxon.com/jchem/FAQ.html#regenerate


Please increase the value of the "max_allowed_packet"
variable for MySQL. The following line should be added to
the configuration file "my.ini" under the [mysqld] section :


 max_allowed_packet = 100M 


I've made the fix in my system's my.cnf file, restarted the mysqld daemon, and restarted web services. I still receive the same error. I've also tried max_allowed_packet = 200M and this has not helped either.


Any ideas?


Thanks,


-John David

User c91b2283c1

18-02-2010 19:54:19

Hello,


I've solved this issue.


The data I am working with was imported from an SDF file using Instant JChem (IJC). It looks like the data as imported by IJC was incompatible with Web Services. Specifically, it was missing a column (cd_pre_calculated) and needed to be regenerated.


It became clear that it was necessary to update and regenerate my data. However, attempts at calling "jcman u" and "jcman r" did not work since JChem Base had not been configured to connect to a database. Since I did not have a GUI available, it became necessary to establish a connection using the command line. The steps required to do so are located here: https://www.chemaxon.com/forum/viewpost27075.html


Once JChem had been configured properly, I was able to run "jcman u" which took care of both adding the missing column and regenerating the data.

ChemAxon ebbce65bcf

19-02-2010 12:01:25

John,


Yes, you are right. IJC usually uses older versions of JChem than web services, and since you cannot regenerate tables using the Web services with the Ajax example yet, you have to use JChem to regenerate your tables to the proper version. We are planning to implement regenaration and other services can be found in JChem Manager by Web Services version 5.4.


Anyway, you can find more information about why and when to regenerate tables on the following URL:


http://www.chemaxon.com/jchem/doc/admin/#regenpol


Feel free to ask if you have more questions or issues in the future.


Regards,


Roland