Thanks. I will try, but the database can't access, open will report error:
optimize Improper use? Potential bug? Your feedback is welcome: Contact: basex-talk@mailman.uni-konstanz.de Version: BaseX 7.7.2 Java: Sun Microsystems Inc., 1.6.0_24 OS: Linux, amd64 Stack Trace: java.lang.RuntimeException: Data Access out of bounds: - pre value: 0 - #used blocks: 0 - #total locks: 0 - access: -1 (0 > -1] at org.basex.util.Util.notexpected(Util.java:53) at org.basex.io.random.TableDiskAccess.cursor(TableDiskAccess.java:488) at org.basex.io.random.TableDiskAccess.read1(TableDiskAccess.java:189) at org.basex.data.Data.kind(Data.java:282) at org.basex.index.resource.Docs.docs(Docs.java:87) at org.basex.index.resource.Docs.init(Docs.java:75) at org.basex.index.resource.Resources.init(Resources.java:64) at org.basex.core.cmd.Optimize.optimize(Optimize.java:80) at org.basex.core.cmd.Optimize.run(Optimize.java:42) at org.basex.core.Command.run(Command.java:345) at org.basex.core.Command.exec(Command.java:321) at org.basex.core.Command.execute(Command.java:78) at org.basex.server.LocalSession.execute(LocalSession.java:122) at org.basex.server.Session.execute(Session.java:37) at org.basex.core.Main.execute(Main.java:146) at org.basex.core.Main.execute(Main.java:130) at org.basex.core.Main.console(Main.java:90) at org.basex.BaseX.<init>(BaseX.java:168) at org.basex.BaseX.main(BaseX.java:38)
--
此致
easy
莫愁前路无知己,天下谁人不识君。
At 2013-12-19 03:06:45,"Christian Grün" christian.gruen@gmail.com wrote:
Hi Easy,
I guess the problem has been fixed in the 7.8 snapshot. Could you please give it a try and report back?
Best, Christian
Am 18.12.2013 20:04 schrieb "easy" lin_xd@126.com:
Hi,all, I have a web service as fellow :
declare %output:method("xml") %output:omit-xml-declaration("no") %output:media-type("application/xml") %updating %rest:path("/add_ehr_doc") %rest:POST("{$body}") %rest:header-param("pid","{$pid}") %rest:header-param("doc_id","{$doc_id}") %rest:header-param("op","{$op}","APND") function ehr:add_ehr_doc( $body ,$pid as xs:string,$doc_id as xs:string,$op as xs:string ) { (:let $state:=db:open($ehr:dbname):) (:let $path:=if(string-length($pid)>=15 and string-length($pid)<=18) then substring($pid,1,6)||'/'||substring($pid,7,8)||'/'||substring($pid,15)|| else $pid:) let $fp:=substring($pid,1,6)||'/'||substring($pid,7,8)||'/'||substring($pid,15)||'.xml' return if (db:exists($ehr:dbname,$fp)) then ( insert node ($body//*:DataSet) into (doc($ehr:dbname||"/"||$fp)//*:BasicDataset),db:output(<msg> ppend</Ack><Url>{$fp}</Url></msg>) ) else ( db:add($ehr:dbname, $body,$fp),db:output(<msg><Ack>201 new add</Ack><Url>{$fp}</Url></msg>) ) };
then there is a process call the service continuously. some times, will occur this error.
10:00:10.663 10.8.252.93:40461 admin REQUEST [POST] http://10.8.252.91:8984/add_ehr_doc 10:00:10.669 10.8.252.93:40461 admin 500 Unexpected error: Improper use? Potential bug? Your feedbac k is welcome: Contact: basex-talk@mailman.uni-konstanz.de Version: BaseX 7.7.2 Java: Sun Microsystems Inc., 1.6.0_2 4 OS: Linux, amd64 Stack Trace: java.lang.IllegalMonitorStateException: Thread already holds one or more locks. at org.basex.core.DBLocking.acquire(DBLocking.java:106) at org.basex.core.Context.register(Context.java:239) at org.ba sex.http.restxq.RestXqResponse.create(RestXqResponse.java:69) at org.basex.http.restxq.RestXqModule.process(RestXqM odule.java:108) at org.basex.http.restxq.RestXqFunction.process(RestXqFunction.java:100) at org.basex.http.restxq.R estXqServlet.run(RestXqServlet.java:31) at org.basex.http.BaseXServlet.service(BaseXServlet.java:58) at javax.servl et.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.j ava:684) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:457) at org.eclipse.jetty.server. handler.ScopedHand... 5.36 ms
_______________________________________________ BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk