Log of the #duraspace-ff channel on chat.freenode.net

Using timezone: Eastern Standard Time
* fasseg leaves07:28
* fcrepo-bot joins07:40
* dwilcox joins08:02
* dwilcox leaves08:06
* fasseg joins08:13
* dwilcox joins08:28
* fcrepo-bot leaves08:43
<pivotal-bot____>Benjamin Pennell started "Stacktrace dump on UI "Seach" with empty string" https://www.pivotaltracker.com/story/show/6293813609:04
Benjamin Pennell finished "Stacktrace dump on UI "Seach" with empty string" https://www.pivotaltracker.com/story/show/62938136
* gregjansen joins09:19
* ermadmix joins09:25
* mikeAtUVa joins
* github-ff joins09:29
[fcrepo4] awoods pushed 1 new commit to master: http://git.io/LegEsA
fcrepo4/master c545379 Eric James: Add rdf:type for primary and mixin nodetypes and their supertypes...
* github-ff leaves
<pivotal-bot____>Andrew Woods added comment: "Nicely done.09:30
Resolved with: https://github.com/futures/fcrepo4/commit/c5453795d89de4b541b7500a60cbb0b109a2f1e7" https://www.pivotaltracker.com/story/show/65210272
Andrew Woods delivered "Inject triples for supertypes into RDF" https://www.pivotaltracker.com/story/show/65210272
* github-ff joins09:31
[fcrepo4] awoods closed pull request #244: add rdf:type for primary and mixin nodetypes and their supertypes (master...erj-rdftypes2) http://git.io/yGn4jg
* github-ff leaves
* ajs6f joins09:33
* dwilcox leaves09:36
* dwilcox joins09:37
<ajs6f>awoods: ping
<awoods>on a call
<ajs6f>NO. WAY.
* dwilcox leaves09:41
* ajs6f leaves
* ajs6f1 joins
* tecoripa joins09:42
<benpennell>ajs6f: am I right in assuming that one of the goals in extracting interfaces out to fcrepo-kernel-api is to avoid needing a dependency on modshape?09:43
<ajs6f1>benpennel: Yes, we want to let kernel-api itself depend only on the JCR API, to keep it nice and light. Similarly, if Jena offered an API module for the core RDF abstractions (which I couldn't find) we would want to use that.09:45
* travis-ci joins
[travis-ci] futures/fcrepo4#1566 (master - c545379 : Eric James): The build passed.
[travis-ci] Change view : https://github.com/futures/fcrepo4/compare/8fb508eeaeb2...c5453795d89d
[travis-ci] Build details : http://travis-ci.org/futures/fcrepo4/builds/19186115
* travis-ci leaves
<ajs6f1>benpennell: We want to let people build extension functionality against Fedora without dragging all of our impl dependencies along for the ride.
<benpennell>asking because NamespaceTools requires NamespaceRegistry from org.modeshape.jcr, it was one of the classes marked for moving over09:46
* dwilcox joins09:47
<ajs6f1>benpennel: Good catch. Well, we can try to refactor NamespaceTools to use javax.jcr.NamespaceRegistry, if possible...
<fasseg>ajs6f1: do you know if fedora 3.6 returns a Exception message when a 500 is encountered to the User Agent, or is the Exception hidden?
<benpennell>FedoraTypesUtil also references modeshape in a static method. it also depends on fcrepo-jcr's one and only class
<fasseg>I can't dl the sources here, with this wifi
<ajs6f1>fasseg: I believe that it does, but I don't recall off the top of my head. mikeAtUVa— do you remember?
benpennell: fcrepo-jcr? Which class is that?09:48
one of yours!09:49
<ajs6f1>benpennell: That was part of the kernel. barmintor moved that to fcrepo-jcr, I believe. That might a sign that we should move it to kernel-api.
Does it need MODE, or just the JCR API?
benpennell: And which static method in FedoraTypesUtil is using MODE types?09:50
that's it
<ajs6f1>benpennell: I would think we can factor that to use the JCR API instead… does that seem reasonable to you?09:51
<benpennell>actually not quite true, isBinaryContentProperty and getRepositoryCount
<ajs6f1>Hm. I wonder why these guys are using MODE directly.
It's not obvious to me that they must.
<benpennell>i'll need to look a bit more closely to figure out if its needed09:52
<ajs6f1>If we have a legit need here, perhaps we can depend on MODE's API module, which isn't too huge. But it would be better to avoid even that.
* ajs6f joins09:53
* ajs6f1 leaves
<ajs6f>benpennell: Okay, let me know what you find and if you need backup.
<benpennell>I'll move FedoraJcrTypes over to fcrepo-kernel-api though i think. not sure what to do about the module once it doesn't have anything in it tohugh
<ajs6f>Does it not have config files in it?
* ksclarke joins09:54
<benpennell>no resources folder, so just FedoraJcrTypes, a package-info and a pom09:55
<ajs6f>benpennell: Hm. Let's bring this up during standup. We may have factored around fcrepo-jcr in such a way as to remove its purpose. Or we may want to keep it in order to control the dependencies on MODE there.
<benpennell>okay, i'll hold off on that bit09:56
* osmandin joins09:58
* github-ff joins09:59
[ontology] ajs6f pushed 1 new commit to master: http://git.io/JXpeRA
ontology/master fedd895 ajs6f: Adding to .gitignore
* github-ff leaves
* github-ff joins10:02
[ontology] ajs6f pushed 1 new commit to master: http://git.io/o1VACQ
ontology/master 7fa7619 ajs6f: Import LDP OWL directly
* github-ff leaves
<pivotal-bot____>Mike Daines added comment: "The following pages were checked and arguments changed.10:04
https://wiki.duraspace.org/display/FF/Access+Roles+..." https://www.pivotaltracker.com/story/show/63901924
<ajs6f>afk bbs
* ajs6f leaves
<pivotal-bot____>Mike Daines finished "Update curl examples to use --data-binary instead of -d option" https://www.pivotaltracker.com/story/show/63901924
* ajs6f joins10:10
* scossu joins10:11
<daines>Is anyone else planning to work on https://www.pivotaltracker.com/story/show/65410206 (allow PUT to create resources if they don't exist)? I'd like to have a look at if not.10:12
<pivotal-bot____>feature: Allow PUT to create resources if they don't exist (unstarted) / owner:10:13
* scossu1 joins10:14
<ajs6f>daines: I don't see why not, but do check the LDP spec to make sure you do something compliant with that10:15
* scossu1 leaves10:16
<pivotal-bot____>Osman Din added comment: "I disabled the test so it should build now on unbuntu. Please refer to the commit comment for an explanation: ""
..." https://www.pivotaltracker.com/story/show/62071504
* scossu1 joins10:17
* fasseg leaves
* scossu leaves
<daines>ajs6f: as in https://dvcs.w3.org/hg/ldpwg/raw-file/default/ldp.html#ldpr-HTTP_PUT ?
* scossu1 leaves
* scossu joins10:18
<ajs6f>daines: Right.
<pivotal-bot____>Mike Daines estimated "Allow PUT to create resources if they don't exist" as 3 points https://www.pivotaltracker.com/story/show/6541020610:19
Mike Daines started "Allow PUT to create resources if they don't exist" https://www.pivotaltracker.com/story/show/65410206
Osman Din added comment: "RFC. Clicking finish to allow awoods to comment: ""10:20
https://github.com/osmandin/fcrepo4/commit/80f8867d107e47289..." https://www.pivotaltracker.com/story/show/65979104
Osman Din finished "Create strawman for holding ModeShape configuration" https://www.pivotaltracker.com/story/show/65979104
<osmandin>afk 1010:22
<pivotal-bot____>Mike Daines edited "Hide/disable interface add object/ds option if FilesystemConnector is read-only" https://www.pivotaltracker.com/story/show/6589933010:29
* fasseg joins10:31
<gregjansen>awoods: would you like me to add the web.xml config (requiring authN of a fedoraUser or fedoraAdmin) to the auth war? It would be straightforward..10:41
<awoods>daines: There are two sections of the LDP spec that you will want to consider:
<gregjansen>awoods: I am looking for small jobs while I wait for sysop help on puppet10:42
<awoods>gregjansen: sure, that would be good.
gregjansen: please create a ticket.
and work it.
<gregjansen>awoods: yep, I am on it
<ajs6f>Work it like a punch press.
<pivotal-bot____>Gregory Jansen added "Add security contraint to web.xml for auth war" https://www.pivotaltracker.com/story/show/6606494210:43
Gregory Jansen started "Add security contraint to web.xml for auth war" https://www.pivotaltracker.com/story/show/66064942
Andrew Woods edited "Allow PUT to create resources if they don't exist" https://www.pivotaltracker.com/story/show/6541020610:46
Andrew Woods accepted "Consolidate war configuration files" https://www.pivotaltracker.com/story/show/65566634
Andrew Woods accepted "Fixity results in HTML UI has bogus link" https://www.pivotaltracker.com/story/show/64279632
Andrew Woods accepted "Declare exportAs for root without using double slashes" https://www.pivotaltracker.com/story/show/6088375210:47
Andrew Woods accepted "Inject triples for supertypes into RDF" https://www.pivotaltracker.com/story/show/65210272
<cbeer>awoods: on that features email... what are we saying if we cast a 'veto'? can't ship with it, or can't ship without it?10:52
<pivotal-bot____>Mike Durbin started "Test for appropriate behavior for concurrent updates" https://www.pivotaltracker.com/story/show/65582128
<awoods>cbeer: Actually, I was expecting a vote on the whole list, but as you see, votes have become more granular.10:56
cbeer: a veto means, stop the presses and let's talk.10:57
* github-ff joins10:58
[fcrepo4] gregjan opened pull request #249: added a custom web.xml to the auth war, adds security constraint around ... (master...authNrequired) http://git.io/jA3S1g
* github-ff leaves
<pivotal-bot____>Gregory Jansen added comment: "https://github.com/futures/fcrepo4/pull/249" https://www.pivotaltracker.com/story/show/6606494210:59
Gregory Jansen finished "Add security contraint to web.xml for auth war" https://www.pivotaltracker.com/story/show/66064942
<ajs6f>awoods: omw, but will be amimnute or three late
* ajs6f leaves
* ajs6f joins11:06
<gregjansen>Hey y'all. I lost connection, then call was full when I tried to rejoin11:07
<benpennell>its just full of you11:08
* ajs6f leaves
<benpennell>probably can rejoin when you drop
you just left
* ajs6f joins
<mikeAtUVa>gregjansen: you should be able to join now
<gregjansen>status: finished out config tickets. Scott and I talked this AM and we are scaling back our puppet tooling to just deploy WAR and configs
(not setting up java and tomcat)11:09
* ajs6f leaves11:10
* ajs6f joins11:11
My Google connection is fading in and out, so here's a status: I'm continuing work on modeling. I have a strawman mapping into LDP committed to futures/ontology and am moving on to the JCR -> Fedora piece.11:12
* ajs6f1 joins11:13
* ajs6f leaves
<ajs6f1>awoods: we need to talk about how the ontologies get published.
I've broken the data vocabulary apart from the structural model, and we might need to adjust our publishing to meet that change.11:14
I'm currently working on developing a model for JCR, since the formal model is presented in the standard only in human-readable text.
"Drop the monkey"?11:16
Where is this monkey? Why was I not informed about this Fedora monkey?11:17
Does the Fedora monkey have a name?
* ajs6f joins11:22
* ajs6f1 leaves
* gregjansen leaves11:23
<ajs6f>I just lost my connection, but I heard awoods say that he and I can circle up in IRC to discuss ontology publishing.
awoods: I was surprised to see bothtecoripa and escowles vote clustering to 0.11:25
awoods is psychadelic11:26
* edInCo joins
<ajs6f>awoods: To publish the OWL, are you just copying files to a webserver?
* gregjansen joins11:29
<awoods>ajs6f: yes... plus I had to do some Apache magic to have the rdf render even though it does not have a file extension.11:31
* ajs6f1 joins11:34
* ajs6f leaves
<ajs6f1>awoods: Do we want to think maybe about using the NSDL registry or other community-supported platform for publishing this stuff?
<awoods>ajs6f1: publishing in a more formal, standardized host is an interesting idea.11:35
<ajs6f1>awoods: It could also take work off our plate.
awoods: It could also make it easier for someone who isn't familiar with OWL tools and the like to help work on it.11:37
<awoods>ajs6f1: yes (minimal as that work is), although we also have more control over the updates currently.
ajs6f1: I see the value of formality and standardization with publishing on a central/public host being a big plus.11:38
<ajs6f1>awoods: True. You know the old joke: If you've done it three times, script it. In this case, "script it" might mean, "Turn it over to a platform that has been built for that kind of automation."
awoods: I just like screwing around with OWL more than writing code, but I like most things more than writing code.
<awoods>ajs6f1: If you could start a list of ontology hosts for consideration, that would be a great start.11:41
<ajs6f1>awoods: Okay. Unfortunately, as usual, there's US and Euro sites. I think I might ping Martin to get help with that.11:42
If anyone would know, he would.
<benpennell>ajs6f1: two of the three mode dependencies in FedoraTypesUtil are constants from org.modeshape.jcr.api.JcrConstants. We could either include just modeshape-jcr-api in fcrepo-kernel-api or we duplicate the types from JcrConstants in FedoraJcrTypes since its serving the same purpose11:47
<pivotal-bot____>Gregory Jansen finished "Enable auth-war maven profile to build" https://www.pivotaltracker.com/story/show/62938516
Gregory Jansen added comment: "changes here:" https://www.pivotaltracker.com/story/show/6563878811:48
Gregory Jansen added comment: "https://wiki.duraspace.org/display/FF/Configuration+Options+Inventory" https://www.pivotaltracker.com/story/show/65638788
<ajs6f1>benpennel: Hm. modeshape-jcr-api is pretty light, right? Mostly just interfaces?
<pivotal-bot____>Gregory Jansen added comment: "and here https://wiki.duraspace.org/display/FF/Application+Configuration
" https://www.pivotaltracker.com/story/show/65638788
Gregory Jansen finished "Adjust docs in wiki to reflect new config defaults for modeshape." https://www.pivotaltracker.com/story/show/65638788
yes, mostly interfaces. there are a few classes in there too but not much11:51
<awoods>benpennell: And is it correct that pulling in modeshape-jcr-api does not pull in anything else? (or at least not much else?)11:53
<ajs6f1>benpennell: If the artifact itself is light (e.g. < a meg or two) I would just pull it in.
awoods: It should pull in javax.jcr
Which is fine, becuase we would have pulled that anyway.
awoods: I found http://mmisw.org/, but that seems to oriented to a certain audience.
<benpennell>modeshape-jcr-api is 100kb11:54
<ajs6f1>As long as we are assembling a tree of types, but not impls, I think we're fine. That's what we want.
benpennell: That qualifies as small.
* gregjansen leaves11:55
<benpennell>it pulls in javax.jcr, servlet-api and junit
awoods: ^11:56
the other dependency is also from modeshape-jcr-api, so it'd be solved by this too11:59
<awoods>benpennell/ajs6f1: let's pull it in.
<benpennell>although i do kind of wonder if getRepositorySize and getRepositoryCount (where the dependency is) belong in FedoraTypesUtil
<ajs6f1>benpennell: I don't think they do. those are definitely impl.12:00
how about breaking them out of there into a class in the kernel itself?
Also, it sucks that MODE's API is pulling the servlet-api. That's not cool at all.
<benpennell>same with getVersionHistory and getBaseVersion
<ajs6f1>Our API should not depend on HTTP notions.
benpenell: We may need to create an interface that features that functionality and an impl in the kernel.12:01
<benpennell>maybe FedoraTypesUtil needs to become three classes? The version stuff might be okay in api
problem is this is all static methods
* ermadmix leaves
* dwilcox leaves12:03
* dwilcox joins
<benpennell>none of the methods we're talking about splitting out are widely used currently, so it probably wouldn't be difficult to switch them over to non-static12:04
<ajs6f1>benpennell: To be non-static is fine, but let's be clear about the entity that features that behavior… for some of these methods perhaps it is RepositoryService, which already exists...12:05
<benpennell>yes, RepositoryService is probably the best place for getRepositoryCount and Size12:06
<benpennell>not sure about the version ones
<pivotal-bot____>Osman Din added comment: "Incidentally, the digest seems to only getting calculated via decorateContentNode(r,w), but the Javadoc commen..." https://www.pivotaltracker.com/story/show/6522232012:07
<ajs6f1>Probably on resource interfaces, like FedoraObject or Datastream. Or maybe just Resource, if it's true that any resource could theoretically have versions.
<benpennell>getBaseVersion is basically a helper for FedoraResourceImpl
* dwilcox leaves
* ajs6f joins12:09
* ajs6f2 joins12:10
* ajs6f1 leaves12:11
<ajs6f2>afk bbs
* ajs6f2 leaves
* osmandin leaves12:13
<benpennell>ajs6f: getVersionHistory(session, path) could perhaps become part of NodeService, which is the only place using it currently. getVersion(node) could go on FedoraResource.12:14
* ajs6f leaves
<benpennell>lunch time, be back soon
* ajs6f joins12:18
* dwilcox joins12:32
* ermadmix joins12:35
* osmandin joins13:01
* tecoripa1 joins13:09
* tecoripa leaves
* tecoripa1 leaves13:22
* tecoripa1 joins13:23
* ermadmix leaves13:35
* ermadmix joins13:39
<benpennell>hum, so javax.jcr.Node has a getBaseVersion method, but it is deprecated telling you to use VersionManager.getBaseVersion instead. JcrVersionManager of course implements getBaseVersion as: return session.getNode(absPath).getBaseVersion();13:42
* ermadmix leaves14:11
* barmintor joins14:12
awoods: am I right that I have given you all req feedback from Columbia?14:13
<awoods>barmintor: Almost... I am still waiting on an email response.
<barmintor>was my email last week insufficient, or just not public?
awoods: just asking in case I can C&P :)14:14
* ermadmix joins14:18
<awoods>barmintor: Based on your "private" email, I made updates to the use cases. So a C&P may not be applicable.14:20
<barmintor>awoods: okey doke, new response incoming
<awoods>thanks, barmintor.
* daines leaves14:24
* benpennell leaves14:25
* benpennell joins14:27
* daines joins
* benpennell leaves14:33
* benpennell joins14:35
<pivotal-bot____>Kai Sternad started "Remove dead SessionFactory code" https://www.pivotaltracker.com/story/show/6593308214:44
<scossu>What is a good place on the FF wiki to document my research on restrictive node types and content modeling?14:48
Use cases?
* gregjansen joins14:54
<awoods>scossu: maybe a new child page of: https://wiki.duraspace.org/display/FF/Design+-+Content+Modeling15:09
<pivotal-bot____>Osman Din added comment: "Initial work:15:15
https://github.com/osmandin/fcrepo4/commi..." https://www.pivotaltracker.com/story/show/65222320
Osman Din finished "Cache Federated SHA-1 values" https://www.pivotaltracker.com/story/show/65222320
* barmintor leaves15:34
* ajs6f leaves15:43
<pivotal-bot____>Eric James started "Make JMS indexer aware of indexing:indexable mixin even if it is inherited" https://www.pivotaltracker.com/story/show/6515118415:44
<scossu>awoods: thanks, will do.15:45
* ajs6f joins
* github-ff joins15:47
[fcrepo4] mikedurbin opened pull request #250: Documented a concurrency use case in the transactions Integration Tests. (master...concurrent-transaction) http://git.io/Wc-kfw
* github-ff leaves
<pivotal-bot____>Mike Durbin added comment: "This use case is currently unsupported.
I've made a PR with the test which can be used to start a conversat..." https://www.pivotaltracker.com/story/show/65582128
Mike Durbin finished "Test for appropriate behavior for concurrent updates" https://www.pivotaltracker.com/story/show/6558212815:48
* ajs6f1 joins
* ajs6f2 joins15:49
* ajs6f1 leaves
* ajs6f leaves15:50
<benpennell>ajs6f: I'm thinking the various iterator classes that only deal with jcr classes should be moved over, what do you think? To be specific: NodeIterator, NodeTypeIterator, EventIterator, DifferencingIterator, VersionIterator, PropertyIterator15:54
* github-ff joins
[fcrepo4] yulgit1 opened pull request #251: integration test confirming nodetype inheritance (master...erj-typeinher) http://git.io/6Ay1AQ
* github-ff leaves
<pivotal-bot____>Eric James added comment: "https://github.com/futures/fcrepo4/pull/251" https://www.pivotaltracker.com/story/show/65151184
Eric James finished "Make JMS indexer aware of indexing:indexable mixin even if it is inherited" https://www.pivotaltracker.com/story/show/65151184
<ajs6f2>benpennell: Yes, I think you are right. Doing that is a good way to hide even more of the JCR.15:55
ermadmix++ for making scossu happy.
* dwilcox leaves15:56
* dwilcox joins
<pivotal-bot____>Mike Durbin added "Add node-level or graph-level locking." https://www.pivotaltracker.com/story/show/6609378815:58
Mike Durbin edited "Add node-level or graph-level locking." https://www.pivotaltracker.com/story/show/66093788
* ajs6f joins
* ajs6f2 leaves15:59
* dwilcox leaves16:00
<scossu>ermadmix thanks++16:01
* ajs6f leaves
* ajs6f joins
* ajs6f leaves16:02
* ajs6f joins16:03
<pivotal-bot____>Mike Durbin started "Add node-level or graph-level locking." https://www.pivotaltracker.com/story/show/66093788
<ajs6f>as background to LDP? It's an interesting alternative take on how to deal with the content/description dichotomy.
They use operation against the media type to distinguish representations.16:04
e.g. "rel=something".
<pivotal-bot____>Andrew Woods accepted "Create simple utility that takes ModeShape filesystem binary artifacts (i.e. fcrepo4-data directory as input) and..." https://www.pivotaltracker.com/story/show/6207150416:14
<awoods>mikeAtUVa: re: https://www.pivotaltracker.com/s/projects/684825/stories/6609378816:21
<mikeAtUVa>awoods: yeah?16:22
<awoods>mikeAtUVa: updates within a transaction are isolated until committed...
* ajs6f1 joins
<mikeAtUVa>awoods: yeah, it's like branch in git, each transaction, then the commit is a commit -f.16:23
<awoods>mikeAtUVa: Are the use cases raising a need for locking in the absence of updates?
* ajs6f leaves
<mikeAtUVa>awoods: that means if two conflicting transactions are happening concurrently, whichever ends last wins.16:24
<awoods>mikeAtUVa: are you expecting users to lock then transaction-start then transaction-commit then unlock?
<mikeAtUVa>I made a simple IT that demonstrates the use case..... but yeah... something like that.
<ajs6f1>awoods/mikeAtUVa: JCR does provide locking machinery as part of the basic API, but it is resource-oriented, not transaction-oriented.16:25
<mikeAtUVa>ajs6f1: yeah, I found that out, and we need to expose the resource oriented locking to support the "transactions" use cases.
<awoods>mikeAtUVa: I assume two concurrent commits result in two versions being created, but the first commit still exists... just as a previous version, no?16:26
<ajs6f1>mikeAtUVa: But you're talking about locking more than a resource, no? You're talking about locking everything touched by a transaction...
* daines leaves16:27
<mikeAtUVa>awoods: probably, I wasn't testing with versioning.16:28
ajs6f1: I don't think we need to lock resources in a transaction by default...
awoods, ajs6f: so long as there's a *WAY* to achieve locking I think we're good... and exposing a simple lock and unlock endpoint would allow people to build what they need.16:29
<awoods>mikeAtUVa: ok16:30
<mikeAtUVa>awoods, ajs6f: I sort of thought that if two transactions started at once, and one deleted a node, and another updated that node that there'd be some sort of error condition raised when they were committed..16:31
<ajs6f1>mikeAtUVa: Okay, but where is that lock endpoint? On the transaction resource?
And if so, does it (when actuated) lock everything inside that transaction?
* dwilcox joins
<ajs6f1>Because that would mean tracking the resources involved in a tx, which we now leave to MODE.16:32
<mikeAtUVa>ajs6f: no, I think it would be explicitly out of the lock endpoint because (according to spec) it wouldn't apply globally if in an uncommitted session.
Er.... explicitly out of the transaction endpoint.
<ajs6f1>mikeAtUVa: Okay, so where, then? Is "fcr:lock" a global endpoint, like fcr:transaction?16:33
Yeah, I got that.
<mikeAtUVa>I think so.
And like so many others, it would not be workable within a transaction.
<ajs6f1>Hm. So how do we translate that notion of "lock everything I touch" to JCR's notion of "lock this thing here"? DO we not still have to track what people touch inside some container of action?16:34
<mikeAtUVa>ajs6f1: I think if someone wants to "lock everything I touch" then they'll have to invoke "fcr:lock" on a *LOT* of paths....
<pivotal-bot____>Gregory Jansen added "Install puppet and load balancer on UNC cluster." https://www.pivotaltracker.com/story/show/6609683216:35
Gregory Jansen started "Install puppet and load balancer on UNC cluster." https://www.pivotaltracker.com/story/show/66096832
<ajs6f1>So now I'm confused. You're saying we put an "fcr:lock" endpoint on resources, not globally?
That's a straightforward mapping to the JCR machinery.
<pivotal-bot____>Gregory Jansen finished "Install puppet and load balancer on UNC cluster." https://www.pivotaltracker.com/story/show/66096832
<mikeAtUVa>ajs6f1: it should be used judiciously... and lots of "inspect then update" workflows would only need to add a single lock before and an unlock after their work.
ajs6f1: yeah... I think the straightforward mapping to JCR machinery is all we need or want at this point.16:36
* ajs6f1 leaves
* ajs6f joins
Which is good.
* dwilcox leaves
<mikeAtUVa>ajs6f: yeah... I think the straightforward mapping to JCR machinery is all we need or want at this point.
<ajs6f>mikeAtUVa: I'm all in favor of tight scoping.
So the fcr:lock endpoint controls a plain JCR lock on that resource?16:37
<mikeAtUVa>ajs6f: that's what I'd propose.
<ajs6f>And we rely on clients to know when to lock something?
That should be pretty straightforwad.
<mikeAtUVa>ajs6f: yup... and we won't confuse people or impact performance in the vast majority of cases where concurrency isn't a concern.16:38
* ajs6f1 joins16:39
* ajs6f leaves
<ajs6f1>POST to make a lock, DELETE to release it?
<mikeAtUVa>ajs6f: ooh... is that the RESTy way to do it?16:40
<ajs6f1>That depends on whether a lock is a resource in its own right, or a quality of the resource its locking.
* ajs6f joins16:41
* ajs6f1 leaves
<ajs6f>POST to make a lock (returning a new URI that represents the lock), DELETE to that new resource to release the lock, might be a RESTful approach.
Or we have to talk about how to represent the lock as a quality of the resource locked.16:42
<mikeAtUVa>the former sounds easier... though there will be the lock-based properties on locked nodes. We're sort of used to all those jcr properties staring at us though...16:43
<ajs6f>Lock-base properties? Do JCR locks induce properties on their locked resources (I haven't looked at the lock API in months)?16:44
Like when the lock was made or who owns it?
<ajs6f>Hm. Yeah. This is why I'm doing the modeling exercise.
<mikeAtUVa>jcr:lockOwnder, jcr:lockIsDeep... and we have to have the nodes have the mix:lockable mixin.
<ajs6f>Which could be going better.
We can add the mixin via API action as we now do for our own mixins.
<mikeAtUVa>Heh... you wanna take this ticket as a diversion? Coding feels good when you've been thinking all day;)16:46
<ajs6f>I hate coding.
Anyway, that's up to awoods: he has to prioritize.16:47
<mikeAtUVa>ajs6f: I didn't know.
<ajs6f>That awoods is in charge? Yeah, he's pretty quiet.
<mikeAtUVa>ajs6f: nah, about your preferences....16:48
<ajs6f>You've seen my code. It should tell you all you need to know.
My first inclination would be for us to break out locks as resources and transfer the assertions inverted on to them.
So no more "this resource is locked by so-and-so".
Instead, "this lock is owned by so-and-so".16:49
And just a single assertion in the original resource: "this resource is locked by this lock".
For most people, that's all they need to know.
Those who want to know more could follow the link and learn about the specifics of the lock.
Has anyone used a RESTful locking API they really liked? Maybe we should have a role model.16:51
<mikeAtUVa>Does the lock appear then as a top-level resource?
<mikeAtUVa>Do we hide the jcr:properties on the nodes that would betray the true JCR implementation?
<ajs6f>Sort of— all of the info would be there, but transferred to our lock resource.16:52
Transferred as assertions of a slightly different character.
But still, you could learn all the same things.
If we introduce a new resource type for locks, it makes no sense to continue to publish the same assertions on the locked resources, because we'd be "short-circuiting" the new type.16:55
And it would just be a placeholder for operations. That's not real REST.
* osmandin leaves16:56
<mikeAtUVa>ajs6f: so a user might POST fcr:lock to a node, and be returned information identifying the newly created lock resource, which could be inspected (GET) to determine which resource it locks and who own is or deleted (DELETE) to release those resources. Then we'd hide the lock related JCR properties, but perhaps have an RDF assertion "isLockedBy" or something that links to the lock resource?16:58
But maybe I'm nuts and the right thing to do is to alter the representation of the locked resource.16:59
Anyway, I'm outta here. Let's check in about this tomorrow at standup, when awoods can opine about prioritization.
<mikeAtUVa>ajs6f: would we want to include that "isLockedBy" assertion on child nodes that inherit the lock...
ajs6f: sounds good...
<ajs6f>mikeAtUVa: Isn't that factored through the boolean of deep locking?
IOW, don't those assertions appear or not based on whether the lock is deep?17:00
<mikeAtUVa>ajs6f: it is, but there's no property readily available on the nodes inheriting the lock so we'd have to make an extra call on every nodes to see what locks apply
ajs6f: we can work out the details tomorrow... have a nice ride home. It's hot out there.17:01
<ajs6f>There can be at most one, right, because if a grandparent locks deeply and someone tries to lock the parent, they will fail. SO the child can have at most one lock.
Yeah, I'm going to enjoy it. Later.17:02
* ajs6f leaves
<mikeAtUVa>That sounds right.
* gregjansen leaves17:03
* mikeAtUVa leaves17:04
* github-ff joins17:10
[fcrepo4] yulgit1 closed pull request #251: integration test confirming nodetype inheritance (master...erj-typeinher) http://git.io/6Ay1AQ
* github-ff leaves
* gregjansen joins
<pivotal-bot____>Gregory Jansen started "Establish performance goals for UNC cluster" https://www.pivotaltracker.com/story/show/6550482417:15
* tecoripa1 leaves17:30
* gregjansen leaves17:41
<pivotal-bot____>Andrew Woods added "Performance tests with transactions" https://www.pivotaltracker.com/story/show/6610337617:44
* edInCo leaves17:51
* github-ff joins17:59
[fcrepo4] awoods pushed 1 new commit to master: http://git.io/JX8K9A
fcrepo4/master 81d6f83 Gregory Jansen: Add a custom web.xml to the auth war,...
* github-ff leaves
<pivotal-bot____>Andrew Woods added comment: "Resolved with: https://github.com/futures/fcrepo4/commit/81d6f83760bfb2e525d7804b5e598ca93337fb45" https://www.pivotaltracker.com/story/show/6606494218:00
Andrew Woods delivered "Add security contraint to web.xml for auth war" https://www.pivotaltracker.com/story/show/66064942
Eric James added comment: "@ajs6f Not sure what "different LDPath extraction transforms" you had in mind. Could you be specific about ..." https://www.pivotaltracker.com/story/show/6226275818:02
* ermadmix leaves18:06
* dwilcox joins18:08
* dwilcox leaves
<pivotal-bot____>Andrew Woods added "backlog #2" https://www.pivotaltracker.com/story/show/6610601618:16
* travis-ci joins
[travis-ci] futures/fcrepo4#1572 (master - 81d6f83 : Gregory Jansen): The build passed.
[travis-ci] Change view : https://github.com/futures/fcrepo4/compare/c5453795d89d...81d6f83760bf
[travis-ci] Build details : http://travis-ci.org/futures/fcrepo4/builds/19221553
* travis-ci leaves
<pivotal-bot____>Andrew Woods edited "Develop a formal, documented model for the mapping from JCR through a Fedora 4 ontology to LDP" https://www.pivotaltracker.com/story/show/6550709218:18
Andrew Woods edited "Develop a formal, documented model for the mapping from JCR through a Fedora 4 ontology to LDP" https://www.pivotaltracker.com/story/show/65507092
* ksclarke leaves18:36
<scossu>I have pushed some new commits to https://github.com/scossu/fcrepo4/tree/primary-type. Some tests are still failing but I just wanted to share the CND I'm working on: https://github.com/scossu/fcrepo4/blob/primary-type/fcrepo-kernel/src/main/resources/fedora-node-types.cnd19:15
* scossu leaves19:35
* ksclarke joins20:59
<benpennell>awoods: is code supposed to be limited to 80 characters or 120 characters? The style guides say 80 but checkstyles seems to be set to 12021:00
<cbeer>benpennell: try to keep it under 80, but if it's clearer to be a little longer, that's ok too.21:02
<benpennell>was trying to work out some issues with my config for eclipse's formatter when i noticed that, I'll probably just leave it set to 8021:09
* dwilcox joins21:10
<awoods>benpennell: Once the team decided on the 120 cap, I have set my IDE to that.21:12
* dwilcox leaves21:14
<benpennell>okay, i'll go with that so i won't cause as many formatting changes
<pivotal-bot____>Andrew Woods added comment: "Let's have a code-walk-through of this on Thursday." https://www.pivotaltracker.com/story/show/6558581621:44
Andrew Woods rejected "fcrepo should not reference versions in the system workspace." https://www.pivotaltracker.com/story/show/65585816
Andrew Woods accepted "Add security contraint to web.xml for auth war" https://www.pivotaltracker.com/story/show/6606494222:21
Andrew Woods edited "Install puppet and load balancer on UNC cluster." https://www.pivotaltracker.com/story/show/6609683222:22
Andrew Woods added comment: "Is there anything to document here for others who are trying to do the same thing?22:24
https://wiki.duraspace.o..." https://www.pivotaltracker.com/story/show/66096832
Andrew Woods rejected "Install puppet and load balancer on UNC cluster." https://www.pivotaltracker.com/story/show/66096832
Andrew Woods accepted "Update curl examples to use --data-binary instead of -d option" https://www.pivotaltracker.com/story/show/6390192422:28
Andrew Woods added comment: "Resolved with: https://github.com/futures/fcrepo4/commit/3800da98390e7d6a023f8a8ac835f6a58b960bb3" https://www.pivotaltracker.com/story/show/6293813622:33
Andrew Woods delivered "Stacktrace dump on UI "Seach" with empty string" https://www.pivotaltracker.com/story/show/62938136
Andrew Woods added comment: "Tested in tomcat." https://www.pivotaltracker.com/story/show/6293851622:34
Andrew Woods accepted "Enable auth-war maven profile to build" https://www.pivotaltracker.com/story/show/6293851622:35
Andrew Woods accepted "Adjust docs in wiki to reflect new config defaults for modeshape." https://www.pivotaltracker.com/story/show/6563878822:37
* travis-ci joins22:50
[travis-ci] futures/fcrepo4#1573 (master - 3800da9 : bbpennel): The build passed.
[travis-ci] Change view : https://github.com/futures/fcrepo4/compare/81d6f83760bf...3800da98390e
[travis-ci] Build details : http://travis-ci.org/futures/fcrepo4/builds/19233235
* travis-ci leaves
* fcrepo-bot joins23:02

Generated by Sualtam