I have done some additional testing and it appears that when I tried to write the tags it created another issue. I am able to query for the following and return the single result I would expect:
read(haystackConn).haystackCall(“read”,{filter:“hs:site”})
When I run a similar query but for equips, expecting 50 or so results, I get the following from SkySpark:
axon::EvalErr: Func failed: haystackCall(Obj conn,Str op,Obj req,Bool checked); args: (MapDict,Str,Dict1)
sys::IOErr: Bad HTTP response 500 Async Timeout [eval:1]
axon::FantomFn.callx (FantomFn.fan:132)
axon::Fn.callLazy (Fn.fan:71)
axon::Call.eval (Call.fan:39)
skyarcd::Context.evalOrReadAll (Context.fan:108)
skyarcd::SysLib.eval (SysLib.fan:92)
skyarcd::ApiWebMod.evalAllExpr (ApiMod.fan:284)
skyarcd::ApiWebMod.onEvalAll (ApiMod.fan:254)
fan.sys.List.each (List.java:602)
haystack::GbGrid.each (GridBuilder.fan:350)
skyarcd::ApiWebMod.onEvalAll (ApiMod.fan:250)
skyarcd::ApiWebMod.onService (ApiMod.fan:109)
skyarcd::HttpRootMod.onService (HttpMod.fan:213)
arcbeam::HttpChan.onReq (HttpChan.fan:97)
arcbeam::ChanActor.onReceivedReq (ChanActor.fan:130)
arcbeam::ChanActor.receive (ChanActor.fan:56)
concurrent::Actor._dispatch (Actor.java:234)
concurrent::Actor._work (Actor.java:204)
concurrent::ThreadPool$Worker.run (ThreadPool.java:262)
Cause:
sys::IOErr: Bad HTTP response 500 Async Timeout
concurrent::Future.get (Future.java:118)
connExt::ConnActor.sendSync (ConnActor.fan:120)
haystackExt::HaystackLib.toResult (HaystackLib.fan:350)
haystackExt::HaystackLib.haystackCall (HaystackLib.fan:59)
haystackExt::HaystackLib.haystackCall (HaystackLib.fan)
java.lang.reflect.Method.invoke (Unknown)
fan.sys.Method.invoke (Method.java:573)
fan.sys.Method$MethodFunc.callList (Method.java:212)
fan.sys.Method.callList (Method.java:138)
axon::FantomFn.doCall (FantomFn.fan:140)
axon::AxonContext.doCall (AxonContext.fan:145)
axon::FantomFn.callx (FantomFn.fan:128)
axon::Fn.callLazy (Fn.fan:71)
axon::Call.eval (Call.fan:39)
skyarcd::Context.evalOrReadAll (Context.fan:108)
skyarcd::SysLib.eval (SysLib.fan:92)
skyarcd::ApiWebMod.evalAllExpr (ApiMod.fan:284)
skyarcd::ApiWebMod.onEvalAll (ApiMod.fan:254)
fan.sys.List.each (List.java:602)
haystack::GbGrid.each (GridBuilder.fan:350)
skyarcd::ApiWebMod.onEvalAll (ApiMod.fan:250)
skyarcd::ApiWebMod.onService (ApiMod.fan:109)
skyarcd::HttpRootMod.onService (HttpMod.fan:213)
arcbeam::HttpChan.onReq (HttpChan.fan:97)
arcbeam::ChanActor.onReceivedReq (ChanActor.fan:130)
4 More…
sys::IOErr: Bad HTTP response 500 Async Timeout
skyarcd::Client.doCall (Client.fan:250)
skyarcd::Client.call (Client.fan:222)
haystackExt::HaystackConn.call (HaystackConn.fan:108)
haystackExt::HaystackConn.onCall (HaystackConn.fan:102)
haystackExt::HaystackConn.receive (HaystackConn.fan:37)
connExt::ConnActor.receive (ConnActor.fan:181)
concurrent::Actor._dispatch (Actor.java:234)
concurrent::Actor._work (Actor.java:204)
concurrent::ThreadPool$Worker.run (ThreadPool.java:262)
On Niagra I enabled the dev ops logging as you suggested and the following displays while the query is running:
org.projecthaystack.ParseException: Unexpected token: eof [line 1]
at org.projecthaystack.io.HZincReader.err(HZincReader.java:391)
at org.projecthaystack.io.HZincReader.err(HZincReader.java:390)
at org.projecthaystack.io.HZincReader.parseVal(HZincReader.java:172)
at org.projecthaystack.io.HZincReader.readVal(HZincReader.java:78)
at org.projecthaystack.io.HZincReader.readGrid(HZincReader.java:92)
at com.kodaro.haystack.device.ops.BHaystackReadOp.read(BHaystackReadOp.java:100)
at com.kodaro.haystack.device.ops.BHaystackReadOp.op(BHaystackReadOp.java:77)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.asyncOp(BHaystackDeviceOps.java:513)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.access$000(BHaystackDeviceOps.java:27)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps$HaystackWebOp.run(BHaystackDeviceOps.java:652)
at javax.baja.util.ThreadPoolWorker$WorkerThread.run(Unknown Source)
org.eclipse.jetty.io.RuntimeIOException: org.eclipse.jetty.io.EofException
at org.eclipse.jetty.server.ResponseWriter.isOpen(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.flush(Unknown Source)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.respond(BHaystackDeviceOps.java:548)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.asyncOp(BHaystackDeviceOps.java:515)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.access$000(BHaystackDeviceOps.java:27)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps$HaystackWebOp.run(BHaystackDeviceOps.java:652)
at javax.baja.util.ThreadPoolWorker$WorkerThread.run(Unknown Source)
Caused by: org.eclipse.jetty.io.EofException
at org.eclipse.jetty.server.HttpConnection$SendCallback.reset(Unknown Source)
at org.eclipse.jetty.server.HttpConnection$SendCallback.access$300(Unknown Source)
at org.eclipse.jetty.server.HttpConnection.send(Unknown Source)
at org.eclipse.jetty.server.HttpChannel.sendResponse(Unknown Source)
at org.eclipse.jetty.server.HttpChannel.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:167)
at org.eclipse.jetty.server.Utf8HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.respond(BHaystackDeviceOps.java:547)
… 4 more
org.eclipse.jetty.io.RuntimeIOException: org.eclipse.jetty.io.EofException
at org.eclipse.jetty.server.ResponseWriter.isOpen(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.respond(BHaystackDeviceOps.java:547)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.asyncOp(BHaystackDeviceOps.java:520)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.access$000(BHaystackDeviceOps.java:27)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps$HaystackWebOp.run(BHaystackDeviceOps.java:652)
at javax.baja.util.ThreadPoolWorker$WorkerThread.run(Unknown Source)
Caused by: org.eclipse.jetty.io.EofException
at org.eclipse.jetty.server.HttpConnection$SendCallback.reset(Unknown Source)
at org.eclipse.jetty.server.HttpConnection$SendCallback.access$300(Unknown Source)
at org.eclipse.jetty.server.HttpConnection.send(Unknown Source)
at org.eclipse.jetty.server.HttpChannel.sendResponse(Unknown Source)
at org.eclipse.jetty.server.HttpChannel.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at org.eclipse.jetty.server.HttpOutput.write(Unknown Source)
at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:167)
at org.eclipse.jetty.server.Utf8HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.HttpWriter.write(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at org.eclipse.jetty.server.ResponseWriter.write(Unknown Source)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.respond(BHaystackDeviceOps.java:547)
at com.kodaro.haystack.device.ops.BHaystackDeviceOps.asyncOp(BHaystackDeviceOps.java:515)
the axon used is as follows for the equip and point queries, respectively:
read(haystackConn).haystackCall(“read”,{filter:“hs:equip”})
read(haystackConn).haystackCall(“read”,{filter:“hs:point and rc:test”})
I added an actorTimeout tag to my connector and increased its window to 3 minutes but this did not help. I also increased the Op Timeout on the HaystackNetwork Local Device on the Niagara side, but to no avail. I was able to query for equips and points without issue prior to running the write tags function, please advise the best course of action. Thanks.