Open redbeard opened 9 years ago
Bizarre, haven't had that before. One thing to look at is that it uses JSON.load(because sometimes there are embedded Ruby classes eg. Pact::Term) not JSON.parse.
Any news on this one?
Hi @bethesque - reviving an old thread here. I've noticed that this is still happening when using matchers that generate a regex pattern. I've been using the PHP Pact library and using matchers such as uuid()
or dateTimeISO8601()
seem to cause the service to hang.
I noticed when trying to send a curl request once it has hanged, I receive a connection refused so it is like the service has entered an unhealthy state.
What is really interesting is that this has only happened since I have hit a larger number of pacts (I have ~26 pacts to verify against now). When I remove any one of these, it seems to run ok again.
However, when I have replaced these regex matchers with the like()
matcher (which I believe just checks for a matching type) this resolves the issue, the service doesn't hang and successfully verifies against all 26 pacts.
The uuid and dateTimeISO8601 aren't natively supported, so they must be wrappers for "terms" provided by the pact php library. Can you see if you can recreate it using https://github.com/pact-foundation/pact-ruby-standalone-e2e-example ?
I'll investigate this further later, reporting so not to lose track of this bug.
When setting an expected interaction response with the following body payload, and posting to PACT, the server hangs until HTTP timeout.
Removing the regular expressions from the payload avoids the problem.