Merged DEV/SWIFT to HEAD

27125: Subtasks of ALF-7072: RSOLR 013: Remote API to get ACLs and readers
          - ALF-8334: RSOLR 013: Modify ACL schema to record change times
          - ALF-8336: RSOLR 013: DB upgrade scripts for ACL changes
          - TODO: Query APIs
   27128: Added TooManyResultsException as a concurrency detection trigger
          - Usually too many results indicates that the DB table key is not as specific as it should be,
            but it's AVM that showed this up.
   27132: Clean up: javadocs; non-javadocs; uncommented fields; @since tags; etc.
   27134: Removed empty directory
   27135: Fix for ALF-8333: CMIS query: JOIN on an aspect results in CmisInvalidArgumentException
          - incorrect scope used when building orderings
   27139: Fixed SORL transaction tracking queries
          - Queries were using incompatible boolean comparisons
          - Added SOLRDAO to test suite
          - Cleaned up code and reformatted code
   27141: Minor additions to CannedQuery interface
          - get parameter bean
          - construct sort details from a list
          - ALF-7167: Canned queries
   27146: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS) 
          - milestone check-in for sprint demo & review (WIP)
          - added new FileFolderService (paged) list query (public API is subject to change)
          - moved temp JavaScript sorting to Java
          - example usage by DocLib (via ScriptNode) and CMIS (via AlfrescoCmisService)
          - implemented as demo "canned query" including embedded use of "list" permission interceptor
          - ALF-7402 / ALF-7168
   27150: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS) 
          - missed file (follow-on to r27146)
   27158: ALF-7070, ALF-7072: SOLR tracking (node and changeset)
          - Pulled non-DAO code into SOLRTrackingComponent
          - DAO code and related tests just test basic CRUD
          - SOLRTrackingComponent does complex cross-schema manipulation
   27159: Fixed line ending and removed svn:eol-style
   27160: ALF-8334: RSOLR 013: Fixed SQL Server syntax
   27165: RINF 09 / RINF 10: DB-based paged query for get children (DocLib & CMIS) 
          - fix listDeepFolders (causing Imap*Test to fail) 
          - all private methods now order files followed by folders
		    (consistent with existing public APIs such as FileFolderService.search & ScriptNode.childFileFolders*)
          - follow-on to r27146
   28271: Consolidate diagnostic logging for max perm checks (ALF-8388 + ALF-8419)
          - note: this should be a trivial merge to HEAD

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28292 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2011-06-08 17:29:54 +00:00
parent 2f697cebb9
commit efbd951a10
55 changed files with 4434 additions and 2609 deletions

View File

@@ -159,16 +159,16 @@
<sql id="insert_AclChangeSet_AutoIncrement">
insert into alf_acl_change_set
(version)
(commit_time_ms)
values
(#{version})
(null)
</sql>
<sql id="insert_AclChangeSet_Sequence">
insert into alf_acl_change_set
(id, version)
(id, commit_time_ms)
values
(#{id}, #{version})
(#{id}, null)
</sql>
<sql id="insert_Ace_AutoIncrement">
@@ -270,6 +270,16 @@
</if>
</update>
<!-- Update of the change set -->
<update id="update_AclChangeSet" parameterType="AclChangeSet">
update
alf_acl_change_set
set
commit_time_ms = #{commitTimeMs,jdbcType=BIGINT}
where
id = #{id}
</update>
<!-- Optimistic update of the acl member -->
<update id="update_AclMember" parameterType="AclMember">
update

View File

@@ -4,7 +4,7 @@
<mapper namespace="alfresco.solr">
<resultMap id="result_Node" type="Node">
<resultMap id="result_Node" type="SOLRNode">
<result property="id" column="id" jdbcType="BIGINT" javaType="java.lang.Long"/>
<result property="deleted" column="node_deleted" jdbcType="BIT" javaType="java.lang.Boolean" />
<result property="transaction.id" column="txn_id" jdbcType="BIGINT" javaType="java.lang.Long"/>
@@ -20,7 +20,7 @@
<result property="deletes" column="deletes" jdbcType="INTEGER" javaType="java.lang.Integer"/>
</resultMap>
<select id="select_Txns" parameterType="SOLRTransactionParameters" resultMap="result_Transaction">
<select id="select_Txns" parameterType="SOLRTrackingParameters" resultMap="result_Transaction">
select
txn.id as id,
txn.commit_time_ms as commit_time_ms,
@@ -30,7 +30,7 @@
alf_node node
where
txn.id = node.transaction_id and
node.node_deleted = 0
node.node_deleted = #{false}
) as updates,
(select
count(node.id)
@@ -38,25 +38,22 @@
alf_node node
where
txn.id = node.transaction_id and
node.node_deleted = 1
node.node_deleted = #{true}
) as deletes
from
alf_transaction txn
<where>
<if test="txnFromCommitTime != null">
<![CDATA[txn.commit_time_ms >= #{txnFromCommitTime}]]>
<if test="fromCommitTimeInclusive != null">
<![CDATA[txn.commit_time_ms >= #{fromCommitTimeInclusive}]]>
</if>
<if test="minTxnId != null">
<![CDATA[and txn.id >= #{minTxnId}]]>
<if test="fromIdInclusive != null">
<![CDATA[and txn.id >= #{fromIdInclusive}]]>
</if>
</where>
order by txn.commit_time_ms ASC, txn.id ASC
</select>
<!--
TODO filter the from clauses depending on which where clauses have been selected
-->
<select id="select_Txn_Nodes" parameterType="NodeParameters" resultMap="result_Node">
<select id="select_Txn_Nodes" parameterType="SOLRNodeParameters" resultMap="result_Node">
select
node.id as id,
node.node_deleted as node_deleted,