Daily Log for #alfresco IRC Channel

Alfresco discussion and collaboration. Stick around a few hours after asking a question.

Official support for Enterprise subscribers: support.alfresco.com.

Joining the Channel:

Join in the conversation by getting an IRC client and connecting to #alfresco at Freenode. Our you can use the IRC web chat.

More information about the channel is in the wiki.

Getting Help

More help is available in this list of resources.

Daily Log for #alfresco

2017-01-03 05:30:55 GMT <qwebirc45740> <AFaust> qwebirc1074: Yes - you can use SearchService.selectNodes to perform XPath queries or SearchService.query() with the FTS query language and a query consistency mode of TRANSACTIONAL to perform database-bound searches

2017-01-03 05:31:17 GMT <qwebirc45740> Thanks @AFaust I'll try it out

2017-01-03 08:25:07 GMT <yreg> Morning

2017-01-03 09:24:53 GMT <Loftux> Is the latest alfresco 5.2.c or 5.2.d? Artifact for alfresco-platform has 5.2.d, the artifact for alfresco has only 5.2.c?

2017-01-03 09:26:23 GMT <Loftux> And Share is 5.2.c, I guess that is why the alfresco.war became 5.2.c. Wonderful!

2017-01-03 09:28:15 GMT <yreg> Loftux, hehe

2017-01-03 09:34:07 GMT <Loftux> Where has the downloads page for individual components gone? I can't find the downloads for AOS as a bundle, I need this for the Ubuntu installer.

2017-01-03 09:40:51 GMT <Loftux> Found it https://community.alfresco.com/docs/DOC-6552-alfresco-community-edition-file-list-201612

2017-01-03 09:40:53 GMT <alfbot> Title: Alfresco Community Edition file list 201612 | Alfresco Community (at community.alfresco.com)

2017-01-03 09:41:31 GMT <mrks_js> hi & happy new year to everyone!

2017-01-03 09:41:38 GMT <Loftux> And it only has a link to the old 1.1.3 AOS

2017-01-03 09:48:16 GMT <yreg> Loftux, related to alfresco versions check my comment on ALF-21746

2017-01-03 09:48:53 GMT <yreg> Loftux, why don't you search for latest version available on alfresco public releases repository ?

2017-01-03 09:51:01 GMT <yreg> https://artifacts.alfresco.com/nexus/#nexus-search;quick~alfresco-aos-module

2017-01-03 09:51:02 GMT <alfbot> Title: Nexus Repository Manager (at artifacts.alfresco.com)

2017-01-03 09:51:41 GMT <Loftux> yreg: I got most of the stuff from the artifacts server, 1.1.5 is there I know. But not the _vti_bin.war

2017-01-03 09:53:05 GMT <Loftux> So I cannot get a complete installation unless I add _vti_bin.war. ROOT war is available as alfresco-server-root

2017-01-03 09:53:08 GMT <yreg> I thought that one does not changes as AOS versions evolve

2017-01-03 09:53:50 GMT <yreg> did you try this ? https://artifacts.alfresco.com/nexus/#nexus-search;quick~alfresco-vti-bin

2017-01-03 09:53:51 GMT <alfbot> Title: Nexus Repository Manager (at artifacts.alfresco.com)

2017-01-03 09:55:30 GMT <yreg> Loftux by the way, I have a feature request for your install script

2017-01-03 09:56:54 GMT <yreg> add support for unmonitored/unassisted install : the user enters the configuration (what to to install and what not) in command line arguments and the script does everything without prompting

2017-01-03 09:57:26 GMT <Loftux> yreg: That vti_bin is different in size compared to latest included in installer bundles

2017-01-03 09:58:24 GMT <Loftux> yreg: There was a guy working on that, see https://github.com/loftuxab/alfresco-ubuntu-install/issues/17

2017-01-03 09:58:25 GMT <alfbot> Title: Moduliarize (use includes) script · Issue #17 · loftuxab/alfresco-ubuntu-install · GitHub (at github.com)

2017-01-03 09:58:34 GMT <yreg> hmmm, it's probably better to ping Samuel then, or fcorti

2017-01-03 10:09:19 GMT <fcorti> hi yreg and Loftlux, I'm asking to Samuel... if he is @ work today ;-)

2017-01-03 10:29:45 GMT <fcorti> Loftux AOS 1.1.5 is available here

2017-01-03 10:29:46 GMT <fcorti> https://artifacts.alfresco.com/nexus/#nexus-search;gav~~alfresco-aos-module~1.1.5~~

2017-01-03 10:29:47 GMT <alfbot> Title: Nexus Repository Manager (at artifacts.alfresco.com)

2017-01-03 10:33:05 GMT <fcorti> About the page for individual components... are you the file list page below?

2017-01-03 10:33:05 GMT <fcorti> https://community.alfresco.com/docs/DOC-6552-alfresco-community-edition-file-list-201612

2017-01-03 10:33:07 GMT <alfbot> Title: Alfresco Community Edition file list 201612 | Alfresco Community (at community.alfresco.com)

2017-01-03 10:43:33 GMT <Loftux> fcorti: Yes I know I can find the aos amp there, but not the _vti_bin.war, that is only available in the zip bundle. And the file list has only the older 1.1.3 version.

2017-01-03 11:13:03 GMT <zlo_> good mornning all

2017-01-03 13:47:45 GMT <yreg> Guys when you have an optional boolean metadata across multiple types, is it better is it better create it inside some aspect, or simply create an empty aspect and test on it existence (aspect present => value true) ?

2017-01-03 13:48:22 GMT <yreg> note that this is a temporary marker that should/will only be used programatically for some check

2017-01-03 13:48:26 GMT <AFaust> yreg: "better" is subjective - depends on how that metadata needs to be used and relates to other metadata

2017-01-03 13:48:59 GMT <AFaust> for single boolean-like metadata I prefer marker aspects (empty aspect)

2017-01-03 13:49:24 GMT <AFaust> benefit of marker aspect: supported in DB FTS queries in all Alfresco versions while boolean are not

2017-01-03 13:49:51 GMT <yreg> I assumed so, but wanted to check anyway

2017-01-03 13:50:23 GMT <AFaust> "in all Alfresco versions" => obviously all versions that support DB FTS at all

2017-01-03 13:51:45 GMT <AFaust> drawback of marker aspect: no support in NodeService for getChildNodeWithAspect - if that is necessary more often than a global query, a boolean property might be better suited

2017-01-03 13:51:55 GMT <yreg> AFaust, well I know that when I do an upgrade, I need to do this http://docs.alfresco.com/5.1/concepts/intrans-metadata-conf-patch.html in order to be able to do DB FTS against boulean, among other properties

2017-01-03 13:51:57 GMT <alfbot> Title: Configuring an optional patch for upgrade | Alfresco Documentation (at docs.alfresco.com)

2017-01-03 13:52:07 GMT <AFaust> (no one says you can't just use a marker aspect with a single boolean property that always is true when aspect is applied)

2017-01-03 13:53:22 GMT <yreg> AFaust, so a marker aspect with a single property defaulting to true

2017-01-03 13:53:31 GMT <yreg> seems better

2017-01-03 13:53:47 GMT <AFaust> Sure, you need to enable the by-default-disabled patch. Honestly I can't understand why these patches are considered optional in the first place. I enable them in all systems I work with and as an addon developer I simply require transactional queries to work or I won't guarantee my addon works...

2017-01-03 14:45:41 GMT <yreg> hey AFaust is there greater than/ less than operands in AFTS

2017-01-03 15:02:01 GMT <yreg> would range queries work for DB AFTS ?

2017-01-03 15:03:48 GMT <iblanco> yreg: http://docs.alfresco.com/community/concepts/intrans-metadata-query.html

2017-01-03 15:03:49 GMT <alfbot> Title: Transactional metadata queries supported by database | Alfresco Documentation (at docs.alfresco.com)

2017-01-03 15:04:08 GMT <iblanco> I guess AFTS DB supports just the same predicates as CMIS DB queries

2017-01-03 15:04:31 GMT <iblanco> I think I woul stay in the safe side and user > and < just in case.

2017-01-03 15:07:23 GMT <yreg> thanks iblanco

2017-01-03 15:12:46 GMT <iblanco> yreg: In Share's Admin tools section, in the node browser tool, you can select "db-afts" as search language. You can test there your AFTS queries that should run against the DB, if you try any supported operation it will complain.

2017-01-03 15:13:13 GMT <iblanco> I meant, any unsupported operation.

2017-01-03 15:43:29 GMT <AFaust> yreg: range queries are poorly supported on DB AFTS - they might theoretically work but I would only expect reasonable results on numeric property types

2017-01-03 15:43:50 GMT <yreg> AFaust, they do not work

2017-01-03 15:43:53 GMT <yreg> it appears

2017-01-03 15:44:08 GMT <AFaust> "poorly supported" applies then...

2017-01-03 15:44:15 GMT <yreg> sorry I meant the <> ..

2017-01-03 15:44:19 GMT <AFaust> iblanco: AFTS and CMIS DB support is quite different

2017-01-03 15:44:27 GMT <yreg> the range queries were extremely slow

2017-01-03 15:44:53 GMT <AFaust> ok <> cannot work because these are not valid operators in AFTS AFAIK

2017-01-03 15:47:16 GMT <AFaust> and range queries are understandibly slow because the query is run against THE LARGEST table in any Alfresco system, and typically DBs are poorly optimised for property queries (statistic granularity and frequency of analysis)

2017-01-03 15:51:40 GMT <iblanco> AFaust: It's good to know. I've always expected them to be "similarly" supported as there isn't any explicit documentation that lists supported queries for DB AFTS.

2017-01-03 15:52:39 GMT <AFaust> In 4.2 there were slight differences, e.g. CMIS DB supported comparison for "null" while the DB AFTS did not support ISNULL:"my:prop"

2017-01-03 15:53:03 GMT <AFaust> But sure, documentation in that regard has been sorely missing like in a few other places

2017-01-03 15:53:53 GMT <AFaust> e.g. required DB optimisations for larger systems based on the specific schema that Alfresco bootstraps

2017-01-03 15:54:36 GMT <iblanco> I usually try to use CMIS QL since DB queries were introduced. Another one more reason to try to stick to that path.

2017-01-03 15:55:42 GMT <AFaust> I might too, if they weren't such a verbose pain in the butt to handle

2017-01-03 15:56:34 GMT <AFaust> As it is, it is 95% FTS for me, but luckily I am quite familiar with what is and is not supported for DB queries

2017-01-03 16:07:11 GMT <iblanco> I've configured an audit application for one of my current projects and I would like to filter some of the mappings it is recording.

2017-01-03 16:07:33 GMT <iblanco> Should somethint like this work: audit.filter.my-trace.transaction.action=~READ

2017-01-03 16:07:54 GMT <iblanco> I would like to skip READ actions.

2017-01-03 16:08:05 GMT <AFaust> iblanco: Audit and filtering really is another pain in the butt...

2017-01-03 16:09:14 GMT <iblanco> I'm still trying to figure out when a mapping is a mapping and when the data is the data, but to be honest even without being too sure about what I was doing I was able to get the data I needed.

2017-01-03 16:10:22 GMT <AFaust> As far as I know, AuditFilter is only used to filter events based on the data producer. Mappings are applied later on in the audit recording process

2017-01-03 16:11:07 GMT <AFaust> This limitation on source filtering is the reason I rarely use audit filters because it is too easy to accidentally cut off audit data for other applications...

2017-01-03 16:11:56 GMT <iblanco> That was my worry too, I'll give it a try just in case and if it doesn't work I will just "filter" the results on view time.

2017-01-03 16:14:22 GMT <AFaust> I typically have a data extractor to derive a "is-relevant" value for my audit application and use that to filter

2017-01-03 16:16:22 GMT <iblanco> AFaust: Good tip. And what if you need to check relevance based on 2 sources? For example, "No READ actions" and only subtypes of "cm:content". Something nicer than "is-relevant-action" + "is-relevant-type"?

2017-01-03 16:18:30 GMT <AFaust> In those cases I have two audit applications - one as a raw data dump, which is then processed by a scheduled job that fills the actual audit application

2017-01-03 16:19:10 GMT <iblanco> No, as expected and documented, the filtering is for the data producer paths only. So no way to restrict data only for my app.

2017-01-03 16:19:15 GMT <AFaust> I think I once created a ticket/issue for substantial improvements to Auditing component because such a use case - derive value from multiple parmaeters - is quite a frequent occurence

2017-01-03 16:21:07 GMT <AFaust> https://issues.alfresco.com/jira/browse/MNT-10070

2017-01-03 16:22:01 GMT <AFaust> For some reason they marked it as fixed because they corrected "a" bug

2017-01-03 16:22:24 GMT <AFaust> But apparently they did not comprehend the ticket...

2017-01-03 16:23:51 GMT <AFaust> Bear in mind that I created that ticket for a paying(!) customer

2017-01-03 16:28:19 GMT <yreg> AFaust, it has been a while since I played with auditing

2017-01-03 16:28:50 GMT <yreg> but wasn't there a way to rewrite event from a data producer to a different path ?

2017-01-03 16:29:20 GMT <yreg> in such case, wouldn't it be possible to filter on the rewritten path ?

2017-01-03 16:29:48 GMT <AFaust> That is what the PathMapping does

2017-01-03 16:29:57 GMT <AFaust> but the PathMapping is applied after filters are run

2017-01-03 16:30:18 GMT <iblanco> yreg: I hav just tested it and can confirm tha AFaust is right

2017-01-03 16:30:56 GMT <iblanco> https://issues.alfresco.com/jira/browse/MNT-1880?focusedCommentId=212650&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-212650

2017-01-03 16:32:49 GMT <iblanco> I'm getting the information back through a web script, so I will just filter the results there.

2017-01-03 16:33:00 GMT <yreg> ok, just checked an old project and I found out I was using isSupported for filtering

2017-01-03 16:34:36 GMT <AFaust> iblanco: That comment just highlights how little is understood of how auditing may be used "in the wild"

2017-01-03 16:34:41 GMT <yreg> iblanco, you mean the query webscript

2017-01-03 16:34:51 GMT <AFaust> As if it is so hard to imagine having two applications with conflicting requirements...

2017-01-03 16:35:03 GMT <yreg> that's definitely a very bad idea

2017-01-03 16:35:20 GMT <iblanco> yreg: yes.

2017-01-03 16:35:26 GMT <yreg> as your DB size may explode easily

2017-01-03 16:35:42 GMT <yreg> and you can easily come across huge performance issues

2017-01-03 16:36:03 GMT <iblanco> yreg: isSupported will avoid the creation of the entry itself?

2017-01-03 16:36:19 GMT <iblanco> Not just the single property that the extractor is trying to get?

2017-01-03 16:36:33 GMT <yreg> wait a sec ...

2017-01-03 16:37:22 GMT <iblanco> I think that isSupported applies only to a single value inside the whole audit entry, it won't stop the rest of the values of the opeeration to be recorded.

2017-01-03 16:37:25 GMT <AFaust> yreg: I am now back at a customer that I had worked for in the past via the old employer. I had written an audit data cleanup job for them (which is the basis for the cleanup job in Alfresco). Turns out, they have still not executed that script and the DB has continued to grow...

2017-01-03 16:37:57 GMT <yreg> just the entry, but I have overriden the auditcomponent in order to avoid the creation of the whole entry in case the path ends with /required or /r

2017-01-03 16:38:28 GMT <AFaust> Haven't run any metrics on the DB server yet for fear it will bring the system down, but if I had to guess I'd say 80% of DB content is old audit data...

2017-01-03 16:38:34 GMT <yreg> and I learnt to put those required/filtering properties first

2017-01-03 16:39:15 GMT <AFaust> yreg: That is kind of a dirty hack with the path...

2017-01-03 16:40:18 GMT <iblanco> I'm leaving know, but I think I'll hae to give this a thought. I find it quite uncomforting having to override AuditComponent, maybe I will stick with the filtering on the webscript and create a cleanup job to be able to remove useless entries.

2017-01-03 16:40:39 GMT <yreg> AFaust, it does the job; without any performance overhead ... so ... I was glad with it <grin>

2017-01-03 16:47:09 GMT <yreg> AFaust, after a second though; If I had to do it now I would probably go for aspectJ to intercept that private method of the audit component impl and cancel the creation of the audit entery upon absence of a required method

2017-01-03 16:48:33 GMT <yreg> that way, I will lose a bit of performance (double checking is supported for required paths) but definitely gain ease of upgrade-ablity

2017-01-03 16:50:21 GMT <iblanco> I'll give it a thought. You're approach definitively sounds good but I think it might be more "intrusive" than a simple afterwards job that cleans the mesh.

2017-01-03 16:50:26 GMT <iblanco> See you tomorrow.

2017-01-03 16:52:05 GMT <AFaust> yreg: using AOP you'd have no information what the target audit application "requires" and could not check it at all

2017-01-03 16:52:30 GMT <AFaust> ah - hook in the private method (didn't see it)

2017-01-03 16:56:15 GMT <yreg> AFaust, did not get the last couple of comments

2017-01-03 16:57:01 GMT <AFaust> I missed the detail that you wanted to intercept the private method - I was thinking about the public interface and when intercepting that you would not have the necessary information to reject the creation.

2017-01-03 16:57:25 GMT <AFaust> In short: I misread a word and my last comments are baseless

2017-01-03 16:57:37 GMT <yreg> ok

2017-01-03 17:44:44 GMT <eswbitto> Does alfresco 5.1 not allow you to change the font size in the wiki? The only thing I see is heading sizes.

2017-01-03 19:39:08 GMT <eswbitto> when I go to share/page/repository#filter=path|%2FSites%2Fnameofsite%2Fdocumentlibrary|&page=1 I can then see all the folders and subfolders

2017-01-03 19:39:28 GMT <eswbitto> I just recently upgraded from 4.2.f to 5.1 and this is only happening on this one site.

2017-01-03 19:39:50 GMT <eswbitto> Any ideas what I can do so that I can get users to access their documentlibrary?

2017-01-03 21:18:47 GMT <eswbitto> could really use some help if anyone knows how to do this

2017-01-03 22:02:20 GMT <yreg_> eswbitto, could you usse node browser

2017-01-03 22:02:39 GMT <yreg_> and compare that documentLibrary folder to other sites

2017-01-03 22:02:48 GMT <yreg_> in terms of metadata and aspect

2017-01-03 22:02:55 GMT <yreg_> or even ACLs

2017-01-03 22:03:11 GMT <yreg_> and let us know what you observe

2017-01-03 22:23:59 GMT <eswbitto> yreg where would I use the node browser?

2017-01-03 22:24:52 GMT <eswbitto> yreg_ where would I use the node browser?

2017-01-03 22:25:19 GMT <yreg_> admin console ?

2017-01-03 22:27:13 GMT <eswbitto> yreg_ I've never really used the node browser on here.

2017-01-03 22:27:41 GMT <yreg_> it's about time ;-)

2017-01-03 22:27:47 GMT <eswbitto> lol

2017-01-03 22:28:03 GMT <eswbitto> So I select a store and then what

2017-01-03 22:32:13 GMT <eswbitto> yreg_ this is what comes up

2017-01-03 22:32:14 GMT <eswbitto> http://tinypic.com/r/11iemok/9

2017-01-03 22:32:15 GMT <alfbot> Title: Image - TinyPic - Free Image Hosting, Photo Sharing & Video Hosting (at tinypic.com)

2017-01-03 22:32:58 GMT <eswbitto> the spacestore id I put in I get from the link when I manually navigate to share/page/repository#filter=path|%2FSites%2Fnameofsite%2Fdocumentlibrary|&page=1

2017-01-03 22:33:27 GMT <yreg_> eswbitto, the path is wrong

2017-01-03 22:33:42 GMT <yreg_> you do not put a uuid there

2017-01-03 22:34:07 GMT <yreg_> if you want to point directly to a noderef use noderef instead of fts-alfresco

2017-01-03 22:36:10 GMT <eswbitto> yreg_ is there docs on how to use this?

2017-01-03 22:36:38 GMT <yreg_> probably; check docs.alfresco.com

2017-01-03 22:37:14 GMT <eswbitto> hmmm I think I got to where you are referring to

2017-01-03 22:42:39 GMT <eswbitto> yreg_ ok so I think I'm actually to where you are referring to. I'm comparing the site I'm having issues with...with another site that doesn't have any problems viewing the documentlibrary. I'm not sure what to look for...Aspects on both look the same

2017-01-03 22:43:11 GMT <yreg_> metadat ?

2017-01-03 22:43:20 GMT <yreg_> ACLs

2017-01-03 22:46:13 GMT <eswbitto> Would ACL's be the same as properties or permissions?

2017-01-03 22:47:35 GMT <eswbitto> yreg_

2017-01-03 22:47:59 GMT <yreg_> metadata is properties, ACL -> permissions

2017-01-03 22:48:27 GMT <yreg_> well technically Access Control Lists

2017-01-03 22:49:22 GMT <eswbitto> yreg_ well looking at the metadata Everything looks the same except for the uuid which I would think would be unique.

2017-01-03 22:49:54 GMT <eswbitto> ACL's look the same

2017-01-03 22:51:16 GMT <eswbitto> The only thing I could think of to do is rebuild the solr4 indexes and if that doesn't work to just move the contect from documentlibrary to a new site and delete this one.

2017-01-03 22:51:31 GMT <eswbitto> *content

2017-01-03 22:52:35 GMT <yreg_> eswbitto, items listing inside folder does not rely on solr AFAIK

2017-01-03 22:53:02 GMT <eswbitto> ok

End of Daily Log

The other logs are at http://esplins.org/hash_alfresco