Hey Sam & Dave,

    I'm following along at home.  I followed David's advice and there's
no change.  FWIW here's the client datastructure and the exception
stacktrace:

#<ZooKeeper State:CONNECTED Timeout:5000 sessionid:0x133fa42621c0004
local:/10.50.0.195:58347 remoteserver:tyrol/10.50.0.184:2181 lastZxid:44
xid:12 sent:56 recv:56 queuedpkts:0 pendingresp:0 queuedevents:0>

java.lang.IllegalArgumentException: Path must not end with / character
    at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:58)
    at org.apache.zookeeper.ZooKeeper.setData(ZooKeeper.java:1025)
    at zookeeper$set_data.doInvoke(zookeeper.clj:394)
    at clojure.lang.RestFn.invoke(RestFn.java:470)
    at avout.transaction$update_txn_state.invoke(transaction.clj:82)
    at avout.transaction$stop$fn__2604.invoke(transaction.clj:239)
    at avout.transaction$stop.invoke(transaction.clj:238)
    at
avout.transaction.LockingTransaction$fn__2617.invoke(transaction.clj:321)
    at
avout.transaction.LockingTransaction.runInTransaction(transaction.clj:301)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:92)
    at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:30)
    at avout.transaction$run_in_transaction.invoke(transaction.clj:354)
    at avout.core$zk_ref.doInvoke(core.clj:51)
    at clojure.lang.RestFn.invoke(RestFn.java:445)
    at clojure.lang.AFn.applyToHelper(AFn.java:167)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3337)
    at clojure.lang.Compiler$DefExpr.eval(Compiler.java:375)
    at clojure.lang.Compiler.eval(Compiler.java:6470)
    at clojure.lang.Compiler.eval(Compiler.java:6431)
    at clojure.core$eval.invoke(core.clj:2795)
    at swank.commands.basic$eval_region.invoke(basic.clj:47)
    at swank.commands.basic$eval_region.invoke(basic.clj:37)
    at
swank.commands.basic$eval760$interactive_eval__761.invoke(basic.clj:66)
    at clojure.lang.Var.invoke(Var.java:401)
    at tavout.core$eval2926.invoke(NO_SOURCE_FILE)
    at clojure.lang.Compiler.eval(Compiler.java:6465)
    at clojure.lang.Compiler.eval(Compiler.java:6431)
    at clojure.core$eval.invoke(core.clj:2795)
    at swank.core$eval_in_emacs_package.invoke(core.clj:92)
    at swank.core$eval_for_emacs.invoke(core.clj:239)
    at clojure.lang.Var.invoke(Var.java:409)
    at clojure.lang.AFn.applyToHelper(AFn.java:167)
    at clojure.lang.Var.applyTo(Var.java:518)
    at clojure.core$apply.invoke(core.clj:600)
    at swank.core$eval_from_control.invoke(core.clj:99)
    at swank.core$spawn_worker_thread$fn__493$fn__494.invoke(core.clj:298)
    at clojure.lang.AFn.applyToHelper(AFn.java:159)
    at clojure.lang.AFn.applyTo(AFn.java:151)
    at clojure.core$apply.invoke(core.clj:600)
    at swank.core$spawn_worker_thread$fn__493.doInvoke(core.clj:294)
    at clojure.lang.RestFn.invoke(RestFn.java:397)
    at clojure.lang.AFn.run(AFn.java:24)
    at java.lang.Thread.run(Thread.java:680)


Edmund

On 01/12/2011 15:39, David Edgar Liebke wrote:
> Hi Sam,
>
>> run-in-transaction exception:  #<IllegalArgumentException 
>> java.lang.IllegalArgumentException: Path must not end with / character> nil 
> Very interesting, I wouldn't expect that particular exception unless you 
> named the zk-ref "/r0/" instead of "/r0", which you apparently didn't. 
>
> And even when I do call it "/r0/" I get the "Path must not end with / 
> character" exception at a different point in the code, which is probably the 
> result of a patch I added to zookeeper-clj yesterday. 
>
> Can you try deleting the zookeeper-clj jar file from your dependencies, 
> blowing about your ~/.m2/repository/zookeeper-clj directory, reloading your 
> deps, and trying again?
>
> David
>
>
> On Dec 1, 2011, at 10:04 AM, Sam Aaron wrote:
>
>> Hi David,
>>
>> I'm super excited by Avout. It seems *better* than magic in that it not only 
>> appears to make complicated things possible, but also in a conceptually 
>> transparent way. Crazy cool.
>>
>> I'm about to look into this in detail, but I thought I'd just post an issue 
>> I'm having with the basic example just on the off-chance that I'm doing 
>> something obviously wrong.
>>
>> I have zookeeper 3.3.3 installed running on port 2181 with a valid dataDir 
>> path with the appropriate permissions. I'm got avout 0.5.0 and in a REPL 
>> session I do the following:
>>
>> ; SLIME 2009-10-15                                                           
>>                                                         
>> user> (use 'avout.core)                                                      
>>                                                          
>> nil                                                                          
>>                                                          
>> user> (def client (connect "127.0.0.1"))                                     
>>                                                         
>> #'user/client                                                                
>>                                                          
>> user> (def r0 (zk-ref client "/r0" 0))                                       
>>                                                         
>> run-in-transaction exception:  #<IllegalArgumentException 
>> java.lang.IllegalArgumentException: Path must not end with / character> nil 
>> #'user/r0                                                                    
>>                                                          
>> user> r0                                                                     
>>                                                         
>> #<DistributedReference@761b2f32: nil>                                        
>>                                                          
>> user> @r0                                                                    
>>                                                          
>> nil                                                                          
>>                                         
>>
>> Sam
>>
>> ---
>> http://sam.aaron.name
>>
>>
>> On 29 Nov 2011, at 17:38, liebke wrote:
>>
>>> Today we are releasing Avout, which brings Clojure's in-memory model
>>> of state to distributed application development by providing a
>>> distributed implementation of Clojure's Multiversion Concurrency
>>> Control (MVCC) STM along with distributable, durable, and extendable
>>> versions of Clojure's Atom and Ref concurrency primitives.
>>>
>>> Here's the post announcing the project: 
>>> http://clojure.com/blog/2011/11/29/avout.html
>>>
>>> And here's the project's website: http://avout.io
>>>
>>>
>>> David
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google
>>> Groups "Clojure" group.
>>> To post to this group, send email to clojure@googlegroups.com
>>> Note that posts from new members are moderated - please be patient with 
>>> your first post.
>>> To unsubscribe from this group, send email to
>>> clojure+unsubscr...@googlegroups.com
>>> For more options, visit this group at
>>> http://groups.google.com/group/clojure?hl=en
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com
>> Note that posts from new members are moderated - please be patient with your 
>> first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to