Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Infinite Loop In TerminologySvcImpl #62

Closed
jeffeastman opened this issue Jul 24, 2018 · 3 comments
Closed

Infinite Loop In TerminologySvcImpl #62

jeffeastman opened this issue Jul 24, 2018 · 3 comments
Assignees

Comments

@jeffeastman
Copy link

When I attempt to post ValueSet 2.16.840.1.113883.3.464.1004.1453 using the latest build and the same provisioning tests I've been using for months, the program hangs at

Sending 'PUT' request to URL : http://localhost:8080/cqf-ruler/baseDstu3/ValueSet/2.16.840.1.113883.3.464.1004.1453

and the server seems to be looping forever deleting old code system versions. Any ideas?

2018-07-24 16:14:25.897 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 371
2018-07-24 16:14:25.899 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 372
2018-07-24 16:14:25.901 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 373
2018-07-24 16:14:25.904 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 374
2018-07-24 16:14:25.906 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 375
2018-07-24 16:14:25.908 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 376
2018-07-24 16:14:25.910 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 377
2018-07-24 16:14:25.913 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 378
2018-07-24 16:14:25.915 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 379
2018-07-24 16:14:25.917 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 380
2018-07-24 16:14:25.919 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 381
2018-07-24 16:14:25.922 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 382
2018-07-24 16:14:25.926 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 383
2018-07-24 16:14:25.928 [http-nio-8080-exec-3] INFO  c.u.f.j.t.BaseHapiTerminologySvcImpl [BaseHapiTerminologySvcImpl.java:850]  * Deleting code system version 384

@jeffeastman
Copy link
Author

Looking in the database I seem to have 502 history entries for CodeSystem-60385351. There are multiple history entries for some of the others too. I don't understand why there would be so many.

@c-schuler c-schuler self-assigned this Jul 24, 2018
@c-schuler
Copy link
Contributor

I recently added functionality in the form of a ValueSet provider and transaction interceptor that updates/creates CodeSystems whenever a ValueSet is updated/created. Several terminology operations require that a code be within its corresponding CodeSystem to run properly. So I implemented that as a convenience for users.

I believe the issue here is that you are using an older version of the 2.16.840.1.113883.3.464.1004.1453 ValueSet, which is poorly constructed. It has an include for each code instead of having an include for each set of codes belonging to a particular CodeSystem. My logic updates the CodeSystem after each include is processed. Obviously I should account for the possibility of multiple includes for the same CodeSystem in my logic. I will make the necessary changes.

For now, you could use the updated ValueSet, which can be found here

@jeffeastman
Copy link
Author

Yup, that fixed it. Closing now, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants