Hello, Quite a list, but I got some some notes / issues regarding Fcp-2.0. Instead of flooding the bug tracker with minor issues I thought I better bundle them and ask for advice (Node #1075 r15872M)
1.) PersistentGet ...the node sends a PersistentGet message as soon as a connection is established for each request still in the queue. a. the order in wich these messages arrive, should I assume it is arbitrary or is it in request insertion order? b. is it intentional that listing is not followed by an EndListPersitentRequests message? As far as I can see, this would allow clients to do clean post init processing. c. a minor point in relation to the initial listing of persistent requests. Maybe a bit paranoid, but some client may have left an unknown number of requests laying around for the next client to run into. Somehow I would feel better if I could tell the node to only list a a specified set of requests and forget about all others. d. MaxSize and BinaryBlob fields are not passed. This could make it hard in some cases to resend a message without keeping track of the initial message across conncetions. 2.) A suggestion on identifiers. As far as I can see the only way to process is to be prepaired to resend a message to handle IdentifierCollisions. Maybe it would allow clients to do cleaner processing if the node could be explicitely queried for identifiers. 3.) I already asked this question on Frost regarding translations and client / node locale. Why not let the client tell the node wich locale to use in a connection? IIRC nextgens responded something like: error messages are intended to be used by programmers only. Coding a bit deeper into Fcp I noticed all the strings being passed in ConfigData messages and feel like restating my point. Why double effords (horror ;-)when all these strings are already translated so nicely. Was: my american friend wants to talk to the greek node on my machine. 4.) from my wishlist: handle filename collisions. The node checks for TempFilename collisions for security reasons but IIRC does not check for Filename collisions when the request is complete. Anyway.. a flag would be nice indicating how to handle collisions of either one. Something like "HandleTmpFilenameCollisions=report | rename", "HandleFilenameCollisions=report | rename". Where rename does an automatic rename to "myTmpFilename (1)" / "myFilename (1)", reporting the final names on PersistentGet and DataFound. I know, "blah (1)" == ugly, but IMHO but that's what a client has to do anyways. Juergen
