{"action":"created","issue":{"url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/4","repository_url":"https://api.github.com/repos/Islandora-CLAW/Crayfish","labels_url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/4/comments","events_url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/4/events","html_url":"https://github.com/Islandora-CLAW/Crayfish/pull/4","id":155790899,"number":4,"title":"Add IUuidCache functions for transactions","user":{"login":"whikloj","id":2857697,"avatar_url":"https://avatars.githubusercontent.com/u/2857697?v=3","gravatar_id":"","url":"https://api.github.com/users/whikloj","html_url":"https://github.com/whikloj","followers_url":"https://api.github.com/users/whikloj/followers","following_url":"https://api.github.com/users/whikloj/following{/other_user}","gists_url":"https://api.github.com/users/whikloj/gists{/gist_id}","starred_url":"https://api.github.com/users/whikloj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whikloj/subscriptions","organizations_url":"https://api.github.com/users/whikloj/orgs","repos_url":"https://api.github.com/users/whikloj/repos","events_url":"https://api.github.com/users/whikloj/events{/privacy}","received_events_url":"https://api.github.com/users/whikloj/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"ruebot","id":218561,"avatar_url":"https://avatars.githubusercontent.com/u/218561?v=3","gravatar_id":"","url":"https://api.github.com/users/ruebot","html_url":"https://github.com/ruebot","followers_url":"https://api.github.com/users/ruebot/followers","following_url":"https://api.github.com/users/ruebot/following{/other_user}","gists_url":"https://api.github.com/users/ruebot/gists{/gist_id}","starred_url":"https://api.github.com/users/ruebot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruebot/subscriptions","organizations_url":"https://api.github.com/users/ruebot/orgs","repos_url":"https://api.github.com/users/ruebot/repos","events_url":"https://api.github.com/users/ruebot/events{/privacy}","received_events_url":"https://api.github.com/users/ruebot/received_events","type":"User","site_admin":false},"milestone":null,"comments":18,"created_at":"2016-05-19T17:23:21Z","updated_at":"2016-06-01T19:00:26Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/pulls/4","html_url":"https://github.com/Islandora-CLAW/Crayfish/pull/4","diff_url":"https://github.com/Islandora-CLAW/Crayfish/pull/4.diff","patch_url":"https://github.com/Islandora-CLAW/Crayfish/pull/4.patch"},"body":"Addresses https://github.com/Islandora-CLAW/CLAW/issues/185\r\nDepends on https://github.com/Islandora-CLAW/chullo/pull/41\r\n\r\nThis PR adds the ability to interact with objects inside a transaction. \r\n\r\nCLAW uses a UUID -> Fedora Path mapping which is stored in the triplestore, \r\nthis is generated by fcrepo-camel-toolbox using events coming out of Fedora.\r\n\r\nInside a transaction nothing is permanent until you commit the transaction, therefore no events are generated in the interim so the UUID is not stored in the triplestore.\r\n\r\nSo we store the temporary path and the UUID in a simple key cache with the transaction ID.\r\n\r\n## Pre-Testing\r\n\r\n1. You'll need to install Redis (http://redis.io/) on your machine\r\n * apt-get install redis\r\n\r\n2. You'll need phpredis (https://github.com/phpredis/phpredis), instructions are on the README.\r\n```\r\ngit clone https://github.com/phpredis/phpredis\r\ncd phpredis\r\nsudo phpize\r\nsudo ./configure\r\nsudo make && make install\r\n```\r\n3. Add phpredis to PHP\r\n 1. Create a file called **redis.ini** inside `/etc/php5/mods-available` or execute..\r\n\r\n        `sudo sh -c \"echo 'extension=redis.so' > /etc/php5/mods-available/redis.ini\"`\r\n 2. Link this new ini file in to your CLI and Apache PHP inis\r\n\r\n       `sudo ln -s /etc/php5/mods-available/redis.ini /etc/php5/apache2/conf.d/`\r\n       `sudo ln -s /etc/php5/mods-available/redis.ini /etc/php5/cli/conf.d/`\r\n\r\n 3. Restart apache to load new extension, if you run a `php -i` you should see it in the Extensions.\r\n\r\n4. Ready to test\r\n\r\n## Testing\r\n\r\nUsing a turtle file like this\r\n```\r\n@prefix pcdm: <http://pcdm.org/models#> .\r\n@prefix dcterms: <http://purl.org/dc/elements/1.1/> .\r\n@prefix nfo: <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo/v1.2/> .\r\n@prefix xs: <http://www.w3.org/2001/XMLSchema> .\r\n\r\n<> a pcdm:Object ;\r\n  dcterms:title \"Another PCDM Object\" ;\r\n  nfo:uuid \"3a28cd77-60ab-498b-aeb4-8292adc2180b\"^^xs:string .\r\n```\r\n\r\n### Before this PR.\r\n1. Create a resource in Fedora using the /islandora/resource route using the turtle file.\r\n2. Verify you can GET it using the UUID (ie. 3a28cd77-60ab-498b-aeb4-8292adc2180b).\r\n3. Delete it using UUID.\r\n4. Create a transaction.\r\n5. Create a resource in Fedora using the /islandora/resource route using the turtle file inside the transaction.\r\n6. Verify you **CAN'T** GET it using the UUID (ie. 3a28cd77-60ab-498b-aeb4-8292adc2180b).\r\n\r\n### After this PR\r\n1. Create a resource in Fedora using the /islandora/resource route using the turtle file.\r\n2. Verify you can GET it using the UUID (ie. 3a28cd77-60ab-498b-aeb4-8292adc2180b).\r\n3. Delete it using UUID.\r\n4. Create a transaction.\r\n5. Create a resource in Fedora using the /islandora/resource route using the turtle file inside the transaction.\r\n6. Verify you **CAN** GET it using the UUID (ie. 3a28cd77-60ab-498b-aeb4-8292adc2180b).\r\n7. Verify you can DELETE the resource using the UUID."},"comment":{"url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/comments/223091885","html_url":"https://github.com/Islandora-CLAW/Crayfish/pull/4#issuecomment-223091885","issue_url":"https://api.github.com/repos/Islandora-CLAW/Crayfish/issues/4","id":223091885,"user":{"login":"ruebot","id":218561,"avatar_url":"https://avatars.githubusercontent.com/u/218561?v=3","gravatar_id":"","url":"https://api.github.com/users/ruebot","html_url":"https://github.com/ruebot","followers_url":"https://api.github.com/users/ruebot/followers","following_url":"https://api.github.com/users/ruebot/following{/other_user}","gists_url":"https://api.github.com/users/ruebot/gists{/gist_id}","starred_url":"https://api.github.com/users/ruebot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruebot/subscriptions","organizations_url":"https://api.github.com/users/ruebot/orgs","repos_url":"https://api.github.com/users/ruebot/repos","events_url":"https://api.github.com/users/ruebot/events{/privacy}","received_events_url":"https://api.github.com/users/ruebot/received_events","type":"User","site_admin":false},"created_at":"2016-06-01T19:00:26Z","updated_at":"2016-06-01T19:00:26Z","body":"Ok. Close. We fail on the last part of the testing process now.\r\n\r\ntl;dr\r\n\r\n```\r\nvagrant@islandora-deux:~$ curl -i -XDELETE  \"http://localhost:8282/islandora/resource/3a28cd77-60ab-498b-aeb4-8292adc2180b?tx=tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0\"\r\nHTTP/1.1 503 Service Unavailable\r\nDate: Wed, 01 Jun 2016 18:55:06 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nCache-Control: no-cache\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nContent-Length: 7145\r\nConnection: close\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n\r\nmircoservices-error.log\r\n\r\n[Wed Jun 01 18:52:26.393903 2016] [:error] [pid 2308] [client 127.0.0.1:34505] Unable to load transaction transforms into Fedora.\r\n[Wed Jun 01 18:52:46.454977 2016] [:error] [pid 1304] [client 127.0.0.1:34510] Failed to get transform for http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/2f/1c/11/0e/2f1c110e-4d36-4dd0-a6ce-ebebea751f27/fcr:transform/isl_uuid : 406\r\n```\r\n\r\nTOO LONG. WILL TOTALLY READ.\r\n\r\n```\r\nvagrant@islandora-deux:$ cd /opt/microservices/pdx\r\n\r\n\r\nvagrant@islandora-deux:/opt/microservices/pdx$ vim composer.json \r\n\r\n\r\nvagrant@islandora-deux:/opt/microservices/pdx$ cat composer.json \r\n{\r\n    \"name\": \"islandora/pdx\",\r\n    \"description\": \"Top level container for the various PCDM related Islandora CLAW microservices\",\r\n    \"type\": \"library\",\r\n    \"homepage\": \"http://islandora.ca/CLAW\",\r\n    \"support\": {\r\n        \"issues\": \"https://github.com/islandora-claw/CLAW/issues\",\r\n        \"irc\": \"irc://irc.freenode.net/islandora\"\r\n    },\r\n    \"repositories\": [\r\n        {\r\n            \"type\": \"path\",\r\n            \"url\": \"../Crayfish\"\r\n        }\r\n    ],\r\n    \"require\": {\r\n        \"islandora/chullo\": \"^0.0\",\r\n        \"islandora/crayfish\" : \"dev-issue-185\",\r\n        \"silex/silex\": \"^1.3\",\r\n        \"symfony/config\": \"^3.0\",\r\n        \"twig/twig\": \"^1.23\",\r\n        \"symfony/yaml\": \"^3.0\",\r\n        \"easyrdf/easyrdf\": \"^0.9.1\",\r\n        \"ml/json-ld\": \"^1.0\"\r\n    },\r\n    \"require-dev\": {\r\n        \"phpunit/phpunit\": \"^4.8\",\r\n        \"squizlabs/php_codesniffer\": \"^2.0@dev\"\r\n    },\r\n    \"autoload\": {\r\n        \"psr-4\": {\"Islandora\\\\PDX\\\\\": \"src/\"}\r\n    },\r\n    \"minimum-stability\" : \"dev\",\r\n    \"license\": \"MIT\",\r\n    \"authors\": [\r\n        {\r\n            \"name\": \"Islandora Foundation\",\r\n            \"email\": \"community@islandora.ca\",\r\n            \"role\": \"Owner\"\r\n        },\r\n        {\r\n            \"name\": \"Diego Pino Navarro\",\r\n            \"email\": \"dpino@krayon.cl\",\r\n            \"role\": \"Maintainer\"\r\n        },\r\n        {\r\n            \"name\": \"Jared Whiklo\",\r\n            \"email\": \"jwhiklo@gmail.com\",\r\n            \"role\": \"Maintainer\"\r\n        },\r\n        {\r\n            \"name\": \"Nick Ruest\",\r\n            \"email\": \"ruestn@gmail.com\",\r\n            \"role\": \"Maintainer\"\r\n        }\r\n    ]\r\n}\r\n\r\n\r\nvagrant@islandora-deux:/opt/microservices/pdx$ composer update\r\nLoading composer repositories with package information\r\nUpdating dependencies (including require-dev)\r\n  - Removing islandora/crayfish (0.0.3)\r\n  - Installing islandora/crayfish (dev-issue-185)\r\n    Symlinked from ../Crayfish\r\n\r\n  - Updating squizlabs/php_codesniffer dev-master (87efecd => 2d3a4a8)\r\n    Checking out 2d3a4a80cc7df70884ba072dfecda7028b37f1d0\r\n\r\nWriting lock file\r\nGenerating autoload files\r\n\r\n\r\nvagrant@islandora-deux:/opt/microservices/pdx$ sudo service tomcat7 restart\r\n * Stopping Tomcat servlet engine tomcat7                                                                                                                                                      [ OK ] \r\n * Starting Tomcat servlet engine tomcat7                                                                                                                                                             cat                                                                                                                                                                                            [ OK ]\r\n\r\n\r\n\r\nvagrant@islandora-deux:~$ curl -i -XPOST http://localhost:8282/islandora/transaction\r\nHTTP/1.1 201 Created\r\nDate: Wed, 01 Jun 2016 18:52:26 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nLocation: http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0\r\nExpires: Wed, 01 Jun 2016 18:55:26 GMT\r\nCache-Control: private, must-revalidate\r\nContent-Length: 0\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n\r\n\r\nvagrant@islandora-deux:~$ curl -i -XPOST -H\"Content-type: text/turtle\" --data-binary \"@test.ttl\" \"http://localhost:8282/islandora/resource?tx=tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0\"\r\nHTTP/1.1 201 Created\r\nDate: Wed, 01 Jun 2016 18:52:46 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nLocation: http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/2f/1c/11/0e/2f1c110e-4d36-4dd0-a6ce-ebebea751f27\r\nContent-Length: 122\r\nCache-Control: no-cache\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nContent-Type: text/plain; charset=UTF-8\r\n\r\n\r\n\r\nhttp://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/2f/1c/11/0e/2f1c110e-4d36-4dd0-a6ce-ebebea751f27vagrant@islandora-deux:~$ \r\nvagrant@islandora-deux:~$ curl -i \"http://localhost:8282/islandora/resource/3a28cd77-60ab-498b-aeb4-8292adc2180b?tx=tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0\"\r\nHTTP/1.1 200 OK\r\nDate: Wed, 01 Jun 2016 18:53:32 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nCache-Control: must-revalidate, private\r\nLink: <http://www.w3.org/ns/ldp#Resource>;rel=\"type\"\r\nLink: <http://www.w3.org/ns/ldp#Container>;rel=\"type\"\r\nLink: <http://www.w3.org/ns/ldp#BasicContainer>;rel=\"type\"\r\nLink: <http://localhost:8080/fcrepo/rest/>;rel=\"canonical\"\r\nAccept-Patch: application/sparql-update\r\nAccept-Post: text/turtle,text/rdf+n3,text/n3,application/rdf+xml,application/n-triples,multipart/form-data,application/sparql-update\r\nAllow: MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS\r\nPreference-Applied: return=representation\r\nVary: Prefer,Accept,Range,Accept-Encoding,Accept-Language\r\nContent-Length: 2095\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nContent-Type: text/turtle; charset=UTF-8\r\n\r\n@prefix premis: <http://www.loc.gov/premis/rdf/v1#> .\r\n@prefix image: <http://www.modeshape.org/images/1.0> .\r\n@prefix sv: <http://www.jcp.org/jcr/sv/1.0> .\r\n@prefix test: <info:fedora/test/> .\r\n@prefix nt: <http://www.jcp.org/jcr/nt/1.0> .\r\n@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .\r\n@prefix ns002: <http://pcdm.org/models#> .\r\n@prefix ns001: <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo/v1.2/> .\r\n@prefix xsi: <http://www.w3.org/2001/XMLSchema-instance> .\r\n@prefix mode: <http://www.modeshape.org/1.0> .\r\n@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .\r\n@prefix fedora: <http://fedora.info/definitions/v4/repository#> .\r\n@prefix xml: <http://www.w3.org/XML/1998/namespace> .\r\n@prefix jcr: <http://www.jcp.org/jcr/1.0> .\r\n@prefix ebucore: <http://www.ebu.ch/metadata/ontologies/ebucore/ebucore#> .\r\n@prefix ldp: <http://www.w3.org/ns/ldp#> .\r\n@prefix xs: <http://www.w3.org/2001/XMLSchema> .\r\n@prefix fedoraconfig: <http://fedora.info/definitions/v4/config#> .\r\n@prefix mix: <http://www.jcp.org/jcr/mix/1.0> .\r\n@prefix foaf: <http://xmlns.com/foaf/0.1/> .\r\n@prefix dc: <http://purl.org/dc/elements/1.1/> .\r\n\r\n\r\n<http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/> a ldp:RDFSource , ldp:Container , ldp:BasicContainer ;\r\n\tfedora:writable \"true\"^^<http://www.w3.org/2001/XMLSchema#boolean> ;\r\n\ta fedora:RepositoryRoot , fedora:Resource , fedora:Container ;\r\n\tfedora:numberOfChildren \"1\"^^<http://www.w3.org/2001/XMLSchema#long> ;\r\n\tldp:contains <http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/2f/1c/11/0e/2f1c110e-4d36-4dd0-a6ce-ebebea751f27> .\r\n\r\n<http://localhost:8080/fcrepo/rest/fcr:export?format=jcr/xml> dc:format <http://fedora.info/definitions/v4/repository#jcr/xml> .\r\n\r\n<http://fedora.info/definitions/v4/repository#jcr/xml> rdfs:label \"jcr/xml\"^^<http://www.w3.org/2001/XMLSchema#string> .\r\n\r\n<http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/> fedora:exportsAs <http://localhost:8080/fcrepo/rest/fcr:export?format=jcr/xml> ;\r\n\tfedora:hasTransactionProvider <http://localhost:8080/fcrepo/rest/fcr:tx> .\r\n\r\n\r\n\r\nvagrant@islandora-deux:~$ curl -i -XDELETE \"http://localhost:8282/islandora/resource/3a28cd77-60ab-498b-aeb4-8292adc2180b\"\r\nHTTP/1.1 404 Not Found\r\nDate: Wed, 01 Jun 2016 18:54:04 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nCache-Control: no-cache\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nTransfer-Encoding: chunked\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n<!DOCTYPE html>\r\n<html>\r\n    <head>\r\n        <meta charset=\"UTF-8\" />\r\n        <meta name=\"robots\" content=\"noindex,nofollow\" />\r\n        <style>\r\n            /* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */\r\n            html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}\r\n\r\n            html { background: #eee; padding: 10px }\r\n            img { border: 0; }\r\n            #sf-resetcontent { width:970px; margin:0 auto; }\r\n                        .sf-reset { font: 11px Verdana, Arial, sans-serif; color: #333 }\r\n            .sf-reset .clear { clear:both; height:0; font-size:0; line-height:0; }\r\n            .sf-reset .clear_fix:after { display:block; height:0; clear:both; visibility:hidden; }\r\n            .sf-reset .clear_fix { display:inline-block; }\r\n            .sf-reset * html .clear_fix { height:1%; }\r\n            .sf-reset .clear_fix { display:block; }\r\n            .sf-reset, .sf-reset .block { margin: auto }\r\n            .sf-reset abbr { border-bottom: 1px dotted #000; cursor: help; }\r\n            .sf-reset p { font-size:14px; line-height:20px; color:#868686; padding-bottom:20px }\r\n            .sf-reset strong { font-weight:bold; }\r\n            .sf-reset a { color:#6c6159; cursor: default; }\r\n            .sf-reset a img { border:none; }\r\n            .sf-reset a:hover { text-decoration:underline; }\r\n            .sf-reset em { font-style:italic; }\r\n            .sf-reset h1, .sf-reset h2 { font: 20px Georgia, \"Times New Roman\", Times, serif }\r\n            .sf-reset .exception_counter { background-color: #fff; color: #333; padding: 6px; float: left; margin-right: 10px; float: left; display: block; }\r\n            .sf-reset .exception_title { margin-left: 3em; margin-bottom: 0.7em; display: block; }\r\n            .sf-reset .exception_message { margin-left: 3em; display: block; }\r\n            .sf-reset .traces li { font-size:12px; padding: 2px 4px; list-style-type:decimal; margin-left:20px; }\r\n            .sf-reset .block { background-color:#FFFFFF; padding:10px 28px; margin-bottom:20px;\r\n                border-bottom-right-radius: 16px;\r\n                border-bottom-left-radius: 16px;\r\n                border-bottom:1px solid #ccc;\r\n                border-right:1px solid #ccc;\r\n                border-left:1px solid #ccc;\r\n            }\r\n            .sf-reset .block_exception { background-color:#ddd; color: #333; padding:20px;\r\n                border-top-left-radius: 16px;\r\n                border-top-right-radius: 16px;\r\n                border-top:1px solid #ccc;\r\n                border-right:1px solid #ccc;\r\n                border-left:1px solid #ccc;\r\n                overflow: hidden;\r\n                word-wrap: break-word;\r\n            }\r\n            .sf-reset a { background:none; color:#868686; text-decoration:none; }\r\n            .sf-reset a:hover { background:none; color:#313131; text-decoration:underline; }\r\n            .sf-reset ol { padding: 10px 0; }\r\n            .sf-reset h1 { background-color:#FFFFFF; padding: 15px 28px; margin-bottom: 20px;\r\n                border-radius: 10px;\r\n                border: 1px solid #ccc;\r\n            }\r\n        </style>\r\n    </head>\r\n    <body ondblclick=\"var t = event.target; if (t.title && !t.href) { var f = t.innerHTML; t.innerHTML = t.title; t.title = f; }\">\r\n                    <div id=\"sf-resetcontent\" class=\"sf-reset\">\r\n                <h1>Sorry, the page you are looking for could not be found.</h1>\r\n                                        <h2 class=\"block_exception clear_fix\">\r\n                            <span class=\"exception_counter\">1/1</span>\r\n                            <span class=\"exception_title\"><abbr title=\"Symfony\\Component\\HttpKernel\\Exception\\HttpException\">HttpException</abbr> in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 400\">Application.php line 400</a>:</span>\r\n                            <span class=\"exception_message\">Failed getting resource Path for &quot;3a28cd77-60ab-498b-aeb4-8292adc2180b&quot; from triple store</span>\r\n                        </h2>\r\n                        <div class=\"block\">\r\n                            <ol class=\"traces list_exception\">\r\n       <li> in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 400\">Application.php line 400</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->abort('404', 'Failed getting resource Path for &quot;3a28cd77-60ab-498b-aeb4-8292adc2180b&quot; from triple store') in <a title=\"/opt/microservices/Crayfish/src/Provider/CrayfishProvider.php line 176\">CrayfishProvider.php line 176</a></li>\r\n       <li>at <abbr title=\"Islandora\\Crayfish\\Provider\\CrayfishProvider\">CrayfishProvider</abbr>->Islandora\\Crayfish\\Provider\\{closure}('3a28cd77-60ab-498b-aeb4-8292adc2180b', <em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>))</li>\r\n       <li>at <abbr title=\"\"></abbr>call_user_func(<em>object</em>(<abbr title=\"Closure\">Closure</abbr>), '3a28cd77-60ab-498b-aeb4-8292adc2180b', <em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/EventListener/ConverterListener.php line 55\">ConverterListener.php line 55</a></li>\r\n       <li>at <abbr title=\"Silex\\EventListener\\ConverterListener\">ConverterListener</abbr>->onKernelController(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent\">FilterControllerEvent</abbr>), 'kernel.controller', <em>object</em>(<abbr title=\"Symfony\\Component\\EventDispatcher\\EventDispatcher\">EventDispatcher</abbr>))</li>\r\n       <li>at <abbr title=\"\"></abbr>call_user_func(<em>array</em>(<em>object</em>(<abbr title=\"Silex\\EventListener\\ConverterListener\">ConverterListener</abbr>), 'onKernelController'), <em>object</em>(<abbr title=\"Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent\">FilterControllerEvent</abbr>), 'kernel.controller', <em>object</em>(<abbr title=\"Symfony\\Component\\EventDispatcher\\EventDispatcher\">EventDispatcher</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/symfony/event-dispatcher/EventDispatcher.php line 174\">EventDispatcher.php line 174</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\EventDispatcher\\EventDispatcher\">EventDispatcher</abbr>->doDispatch(<em>array</em>(<em>array</em>(<em>object</em>(<abbr title=\"Silex\\EventListener\\ConverterListener\">ConverterListener</abbr>), 'onKernelController')), 'kernel.controller', <em>object</em>(<abbr title=\"Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent\">FilterControllerEvent</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/symfony/event-dispatcher/EventDispatcher.php line 43\">EventDispatcher.php line 43</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\EventDispatcher\\EventDispatcher\">EventDispatcher</abbr>->dispatch('kernel.controller', <em>object</em>(<abbr title=\"Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent\">FilterControllerEvent</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/symfony/http-kernel/HttpKernel.php line 132\">HttpKernel.php line 132</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\HttpKernel\\HttpKernel\">HttpKernel</abbr>->handleRaw(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), '1') in <a title=\"/opt/microservices/pdx/vendor/symfony/http-kernel/HttpKernel.php line 62\">HttpKernel.php line 62</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\HttpKernel\\HttpKernel\">HttpKernel</abbr>->handle(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), '1', <em>true</em>) in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 586\">Application.php line 586</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->handle(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 563\">Application.php line 563</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->run() in <a title=\"/opt/microservices/pdx/src/index.php line 115\">index.php line 115</a></li>\r\n    </ol>\r\n</div>\r\n\r\n            </div>\r\n    </body>\r\n</html>\r\n\r\n\r\n\r\n\r\nvagrant@islandora-deux:~$ curl -i -XDELETE  \"http://localhost:8282/islandora/resource/3a28cd77-60ab-498b-aeb4-8292adc2180b?tx=tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0\"\r\nHTTP/1.1 503 Service Unavailable\r\nDate: Wed, 01 Jun 2016 18:55:06 GMT\r\nServer: Apache/2.4.7 (Ubuntu)\r\nCache-Control: no-cache\r\nX-Powered-By: Islandora Collection REST API v0.0.1\r\nContent-Length: 7145\r\nConnection: close\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n<!DOCTYPE html>\r\n<html>\r\n    <head>\r\n        <meta charset=\"UTF-8\" />\r\n        <meta name=\"robots\" content=\"noindex,nofollow\" />\r\n        <style>\r\n            /* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */\r\n            html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}\r\n\r\n            html { background: #eee; padding: 10px }\r\n            img { border: 0; }\r\n            #sf-resetcontent { width:970px; margin:0 auto; }\r\n                        .sf-reset { font: 11px Verdana, Arial, sans-serif; color: #333 }\r\n            .sf-reset .clear { clear:both; height:0; font-size:0; line-height:0; }\r\n            .sf-reset .clear_fix:after { display:block; height:0; clear:both; visibility:hidden; }\r\n            .sf-reset .clear_fix { display:inline-block; }\r\n            .sf-reset * html .clear_fix { height:1%; }\r\n            .sf-reset .clear_fix { display:block; }\r\n            .sf-reset, .sf-reset .block { margin: auto }\r\n            .sf-reset abbr { border-bottom: 1px dotted #000; cursor: help; }\r\n            .sf-reset p { font-size:14px; line-height:20px; color:#868686; padding-bottom:20px }\r\n            .sf-reset strong { font-weight:bold; }\r\n            .sf-reset a { color:#6c6159; cursor: default; }\r\n            .sf-reset a img { border:none; }\r\n            .sf-reset a:hover { text-decoration:underline; }\r\n            .sf-reset em { font-style:italic; }\r\n            .sf-reset h1, .sf-reset h2 { font: 20px Georgia, \"Times New Roman\", Times, serif }\r\n            .sf-reset .exception_counter { background-color: #fff; color: #333; padding: 6px; float: left; margin-right: 10px; float: left; display: block; }\r\n            .sf-reset .exception_title { margin-left: 3em; margin-bottom: 0.7em; display: block; }\r\n            .sf-reset .exception_message { margin-left: 3em; display: block; }\r\n            .sf-reset .traces li { font-size:12px; padding: 2px 4px; list-style-type:decimal; margin-left:20px; }\r\n            .sf-reset .block { background-color:#FFFFFF; padding:10px 28px; margin-bottom:20px;\r\n                border-bottom-right-radius: 16px;\r\n                border-bottom-left-radius: 16px;\r\n                border-bottom:1px solid #ccc;\r\n                border-right:1px solid #ccc;\r\n                border-left:1px solid #ccc;\r\n            }\r\n            .sf-reset .block_exception { background-color:#ddd; color: #333; padding:20px;\r\n                border-top-left-radius: 16px;\r\n                border-top-right-radius: 16px;\r\n                border-top:1px solid #ccc;\r\n                border-right:1px solid #ccc;\r\n                border-left:1px solid #ccc;\r\n                overflow: hidden;\r\n                word-wrap: break-word;\r\n            }\r\n            .sf-reset a { background:none; color:#868686; text-decoration:none; }\r\n            .sf-reset a:hover { background:none; color:#313131; text-decoration:underline; }\r\n            .sf-reset ol { padding: 10px 0; }\r\n            .sf-reset h1 { background-color:#FFFFFF; padding: 15px 28px; margin-bottom: 20px;\r\n                border-radius: 10px;\r\n                border: 1px solid #ccc;\r\n            }\r\n        </style>\r\n    </head>\r\n    <body ondblclick=\"var t = event.target; if (t.title && !t.href) { var f = t.innerHTML; t.innerHTML = t.title; t.title = f; }\">\r\n                    <div id=\"sf-resetcontent\" class=\"sf-reset\">\r\n                <h1>Whoops, looks like something went wrong.</h1>\r\n                                        <h2 class=\"block_exception clear_fix\">\r\n                            <span class=\"exception_counter\">1/1</span>\r\n                            <span class=\"exception_title\"><abbr title=\"Symfony\\Component\\HttpKernel\\Exception\\HttpException\">HttpException</abbr> in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 400\">Application.php line 400</a>:</span>\r\n                            <span class=\"exception_message\">&quot;Chullo says Fedora4 Repository is Not available&quot;</span>\r\n                        </h2>\r\n                        <div class=\"block\">\r\n                            <ol class=\"traces list_exception\">\r\n       <li> in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 400\">Application.php line 400</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->abort('503', '&quot;Chullo says Fedora4 Repository is Not available&quot;') in <a title=\"/opt/microservices/Crayfish/src/ResourceService/Controller/ResourceController.php line 160\">ResourceController.php line 160</a></li>\r\n       <li>at <abbr title=\"Islandora\\Crayfish\\ResourceService\\Controller\\ResourceController\">ResourceController</abbr>->delete(<em>object</em>(<abbr title=\"Silex\\Application\">Application</abbr>), <em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), <em>false</em>, '')</li>\r\n       <li>at <abbr title=\"\"></abbr>call_user_func_array(<em>array</em>(<em>object</em>(<abbr title=\"Islandora\\Crayfish\\ResourceService\\Controller\\ResourceController\">ResourceController</abbr>), 'delete'), <em>array</em>(<em>object</em>(<abbr title=\"Silex\\Application\">Application</abbr>), <em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), <em>false</em>, '')) in <a title=\"/opt/microservices/pdx/vendor/symfony/http-kernel/HttpKernel.php line 139\">HttpKernel.php line 139</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\HttpKernel\\HttpKernel\">HttpKernel</abbr>->handleRaw(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), '1') in <a title=\"/opt/microservices/pdx/vendor/symfony/http-kernel/HttpKernel.php line 62\">HttpKernel.php line 62</a></li>\r\n       <li>at <abbr title=\"Symfony\\Component\\HttpKernel\\HttpKernel\">HttpKernel</abbr>->handle(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>), '1', <em>true</em>) in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 586\">Application.php line 586</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->handle(<em>object</em>(<abbr title=\"Symfony\\Component\\HttpFoundation\\Request\">Request</abbr>)) in <a title=\"/opt/microservices/pdx/vendor/silex/silex/src/Silex/Application.php line 563\">Application.php line 563</a></li>\r\n       <li>at <abbr title=\"Silex\\Application\">Application</abbr>->run() in <a title=\"/opt/microservices/pdx/src/index.php line 115\">index.php line 115</a></li>\r\n    </ol>\r\n</div>\r\n\r\n            </div>\r\n    </body>\r\n</html>\r\n\r\nmircoservices-error.log\r\n\r\n[Wed Jun 01 18:52:26.393903 2016] [:error] [pid 2308] [client 127.0.0.1:34505] Unable to load transaction transforms into Fedora.\r\n[Wed Jun 01 18:52:46.454977 2016] [:error] [pid 1304] [client 127.0.0.1:34510] Failed to get transform for http://localhost:8080/fcrepo/rest/tx:680512d1-ec8a-4b60-9e2a-429f99ec33a0/2f/1c/11/0e/2f1c110e-4d36-4dd0-a6ce-ebebea751f27/fcr:transform/isl_uuid : 406\r\n```"}}
{"actor":{"display_login":"ruebot"}}