Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
atlas
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dataplatform
atlas
Commits
34d235f3
Commit
34d235f3
authored
Jan 17, 2017
by
Madhan Neethiraj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ATLAS-1471: avoid unnecessary overhead in debug log calls
parent
9c0c46db
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
100 additions
and
34 deletions
+100
-34
DeleteHandler.java
...java/org/apache/atlas/repository/graph/DeleteHandler.java
+40
-13
FullTextMapper.java
...ava/org/apache/atlas/repository/graph/FullTextMapper.java
+8
-2
GraphBackedMetadataRepository.java
...atlas/repository/graph/GraphBackedMetadataRepository.java
+34
-9
GraphBackedSearchIndexer.java
...ache/atlas/repository/graph/GraphBackedSearchIndexer.java
+18
-10
GraphHelper.java
...n/java/org/apache/atlas/repository/graph/GraphHelper.java
+0
-0
GraphToTypedInstanceMapper.java
...he/atlas/repository/graph/GraphToTypedInstanceMapper.java
+0
-0
TypedInstanceToGraphMapper.java
...he/atlas/repository/graph/TypedInstanceToGraphMapper.java
+0
-0
No files found.
repository/src/main/java/org/apache/atlas/repository/graph/DeleteHandler.java
View file @
34d235f3
...
@@ -79,8 +79,11 @@ public abstract class DeleteHandler {
...
@@ -79,8 +79,11 @@ public abstract class DeleteHandler {
String
guid
=
GraphHelper
.
getGuid
(
instanceVertex
);
String
guid
=
GraphHelper
.
getGuid
(
instanceVertex
);
Id
.
EntityState
state
=
GraphHelper
.
getState
(
instanceVertex
);
Id
.
EntityState
state
=
GraphHelper
.
getState
(
instanceVertex
);
if
(
requestContext
.
getDeletedEntityIds
().
contains
(
guid
)
||
state
==
Id
.
EntityState
.
DELETED
)
{
if
(
requestContext
.
getDeletedEntityIds
().
contains
(
guid
)
||
state
==
Id
.
EntityState
.
DELETED
)
{
LOG
.
debug
(
"Skipping deletion of {} as it is already deleted"
,
guid
);
if
(
LOG
.
isDebugEnabled
())
{
continue
;
LOG
.
debug
(
"Skipping deletion of {} as it is already deleted"
,
guid
);
}
continue
;
}
}
// Get GUIDs and vertices for all deletion candidates.
// Get GUIDs and vertices for all deletion candidates.
...
@@ -131,13 +134,19 @@ public abstract class DeleteHandler {
...
@@ -131,13 +134,19 @@ public abstract class DeleteHandler {
* @throws AtlasException
* @throws AtlasException
*/
*/
protected
void
deleteTypeVertex
(
AtlasVertex
instanceVertex
,
boolean
force
)
throws
AtlasException
{
protected
void
deleteTypeVertex
(
AtlasVertex
instanceVertex
,
boolean
force
)
throws
AtlasException
{
LOG
.
debug
(
"Deleting {}"
,
string
(
instanceVertex
));
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Deleting {}"
,
string
(
instanceVertex
));
}
String
typeName
=
GraphHelper
.
getTypeName
(
instanceVertex
);
String
typeName
=
GraphHelper
.
getTypeName
(
instanceVertex
);
IDataType
type
=
typeSystem
.
getDataType
(
IDataType
.
class
,
typeName
);
IDataType
type
=
typeSystem
.
getDataType
(
IDataType
.
class
,
typeName
);
FieldMapping
fieldMapping
=
getFieldMapping
(
type
);
FieldMapping
fieldMapping
=
getFieldMapping
(
type
);
for
(
AttributeInfo
attributeInfo
:
fieldMapping
.
fields
.
values
())
{
for
(
AttributeInfo
attributeInfo
:
fieldMapping
.
fields
.
values
())
{
LOG
.
debug
(
"Deleting attribute {} for {}"
,
attributeInfo
.
name
,
string
(
instanceVertex
));
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Deleting attribute {} for {}"
,
attributeInfo
.
name
,
string
(
instanceVertex
));
}
String
edgeLabel
=
GraphHelper
.
getEdgeLabel
(
type
,
attributeInfo
);
String
edgeLabel
=
GraphHelper
.
getEdgeLabel
(
type
,
attributeInfo
);
switch
(
attributeInfo
.
dataType
().
getTypeCategory
())
{
switch
(
attributeInfo
.
dataType
().
getTypeCategory
())
{
...
@@ -200,7 +209,10 @@ public abstract class DeleteHandler {
...
@@ -200,7 +209,10 @@ public abstract class DeleteHandler {
*/
*/
public
boolean
deleteEdgeReference
(
AtlasEdge
edge
,
DataTypes
.
TypeCategory
typeCategory
,
boolean
isComposite
,
public
boolean
deleteEdgeReference
(
AtlasEdge
edge
,
DataTypes
.
TypeCategory
typeCategory
,
boolean
isComposite
,
boolean
forceDeleteStructTrait
)
throws
AtlasException
{
boolean
forceDeleteStructTrait
)
throws
AtlasException
{
LOG
.
debug
(
"Deleting {}"
,
string
(
edge
));
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Deleting {}"
,
string
(
edge
));
}
boolean
forceDelete
=
boolean
forceDelete
=
(
typeCategory
==
DataTypes
.
TypeCategory
.
STRUCT
||
typeCategory
==
DataTypes
.
TypeCategory
.
TRAIT
)
&&
forceDeleteStructTrait
;
(
typeCategory
==
DataTypes
.
TypeCategory
.
STRUCT
||
typeCategory
==
DataTypes
.
TypeCategory
.
TRAIT
)
&&
forceDeleteStructTrait
;
if
(
typeCategory
==
DataTypes
.
TypeCategory
.
STRUCT
||
typeCategory
==
DataTypes
.
TypeCategory
.
TRAIT
if
(
typeCategory
==
DataTypes
.
TypeCategory
.
STRUCT
||
typeCategory
==
DataTypes
.
TypeCategory
.
TRAIT
...
@@ -247,7 +259,9 @@ public abstract class DeleteHandler {
...
@@ -247,7 +259,9 @@ public abstract class DeleteHandler {
protected
void
deleteVertex
(
AtlasVertex
instanceVertex
,
boolean
force
)
throws
AtlasException
{
protected
void
deleteVertex
(
AtlasVertex
instanceVertex
,
boolean
force
)
throws
AtlasException
{
//Update external references(incoming edges) to this vertex
//Update external references(incoming edges) to this vertex
LOG
.
debug
(
"Setting the external references to {} to null(removing edges)"
,
string
(
instanceVertex
));
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Setting the external references to {} to null(removing edges)"
,
string
(
instanceVertex
));
}
for
(
AtlasEdge
edge
:
(
Iterable
<
AtlasEdge
>)
instanceVertex
.
getEdges
(
AtlasEdgeDirection
.
IN
))
{
for
(
AtlasEdge
edge
:
(
Iterable
<
AtlasEdge
>)
instanceVertex
.
getEdges
(
AtlasEdgeDirection
.
IN
))
{
Id
.
EntityState
edgeState
=
GraphHelper
.
getState
(
edge
);
Id
.
EntityState
edgeState
=
GraphHelper
.
getState
(
edge
);
...
@@ -271,8 +285,11 @@ public abstract class DeleteHandler {
...
@@ -271,8 +285,11 @@ public abstract class DeleteHandler {
* @throws AtlasException
* @throws AtlasException
*/
*/
protected
void
deleteEdgeBetweenVertices
(
AtlasVertex
outVertex
,
AtlasVertex
inVertex
,
String
attributeName
)
throws
AtlasException
{
protected
void
deleteEdgeBetweenVertices
(
AtlasVertex
outVertex
,
AtlasVertex
inVertex
,
String
attributeName
)
throws
AtlasException
{
LOG
.
debug
(
"Removing edge from {} to {} with attribute name {}"
,
string
(
outVertex
),
string
(
inVertex
),
if
(
LOG
.
isDebugEnabled
())
{
attributeName
);
LOG
.
debug
(
"Removing edge from {} to {} with attribute name {}"
,
string
(
outVertex
),
string
(
inVertex
),
attributeName
);
}
String
typeName
=
GraphHelper
.
getTypeName
(
outVertex
);
String
typeName
=
GraphHelper
.
getTypeName
(
outVertex
);
String
outId
=
GraphHelper
.
getGuid
(
outVertex
);
String
outId
=
GraphHelper
.
getGuid
(
outVertex
);
Id
.
EntityState
state
=
GraphHelper
.
getState
(
outVertex
);
Id
.
EntityState
state
=
GraphHelper
.
getState
(
outVertex
);
...
@@ -331,8 +348,11 @@ public abstract class DeleteHandler {
...
@@ -331,8 +348,11 @@ public abstract class DeleteHandler {
//if composite attribute, remove the reference as well. else, just remove the edge
//if composite attribute, remove the reference as well. else, just remove the edge
//for example, when table is deleted, process still references the table
//for example, when table is deleted, process still references the table
//but when column is deleted, table will not reference the deleted column
//but when column is deleted, table will not reference the deleted column
LOG
.
debug
(
"Removing edge {} from the array attribute {}"
,
string
(
elementEdge
),
if
(
LOG
.
isDebugEnabled
())
{
attributeName
);
LOG
.
debug
(
"Removing edge {} from the array attribute {}"
,
string
(
elementEdge
),
attributeName
);
}
elements
.
remove
(
elementEdge
.
getId
().
toString
());
elements
.
remove
(
elementEdge
.
getId
().
toString
());
GraphHelper
.
setProperty
(
outVertex
,
propertyName
,
elements
);
GraphHelper
.
setProperty
(
outVertex
,
propertyName
,
elements
);
break
;
break
;
...
@@ -367,8 +387,11 @@ public abstract class DeleteHandler {
...
@@ -367,8 +387,11 @@ public abstract class DeleteHandler {
if
(
shouldUpdateReverseAttribute
)
{
if
(
shouldUpdateReverseAttribute
)
{
//remove this key
//remove this key
LOG
.
debug
(
"Removing edge {}, key {} from the map attribute {}"
,
string
(
mapEdge
),
key
,
if
(
LOG
.
isDebugEnabled
())
{
attributeName
);
LOG
.
debug
(
"Removing edge {}, key {} from the map attribute {}"
,
string
(
mapEdge
),
key
,
attributeName
);
}
keys
.
remove
(
key
);
keys
.
remove
(
key
);
GraphHelper
.
setProperty
(
outVertex
,
propertyName
,
keys
);
GraphHelper
.
setProperty
(
outVertex
,
propertyName
,
keys
);
GraphHelper
.
setProperty
(
outVertex
,
keyPropertyName
,
null
);
GraphHelper
.
setProperty
(
outVertex
,
keyPropertyName
,
null
);
...
@@ -426,7 +449,11 @@ public abstract class DeleteHandler {
...
@@ -426,7 +449,11 @@ public abstract class DeleteHandler {
*/
*/
private
void
deleteAllTraits
(
AtlasVertex
instanceVertex
)
throws
AtlasException
{
private
void
deleteAllTraits
(
AtlasVertex
instanceVertex
)
throws
AtlasException
{
List
<
String
>
traitNames
=
GraphHelper
.
getTraitNames
(
instanceVertex
);
List
<
String
>
traitNames
=
GraphHelper
.
getTraitNames
(
instanceVertex
);
LOG
.
debug
(
"Deleting traits {} for {}"
,
traitNames
,
string
(
instanceVertex
));
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Deleting traits {} for {}"
,
traitNames
,
string
(
instanceVertex
));
}
String
typeName
=
GraphHelper
.
getTypeName
(
instanceVertex
);
String
typeName
=
GraphHelper
.
getTypeName
(
instanceVertex
);
for
(
String
traitNameToBeDeleted
:
traitNames
)
{
for
(
String
traitNameToBeDeleted
:
traitNames
)
{
...
...
repository/src/main/java/org/apache/atlas/repository/graph/FullTextMapper.java
View file @
34d235f3
...
@@ -56,12 +56,18 @@ public class FullTextMapper {
...
@@ -56,12 +56,18 @@ public class FullTextMapper {
ITypedReferenceableInstance
typedReference
;
ITypedReferenceableInstance
typedReference
;
if
(
instanceCache
.
containsKey
(
guid
))
{
if
(
instanceCache
.
containsKey
(
guid
))
{
typedReference
=
instanceCache
.
get
(
guid
);
typedReference
=
instanceCache
.
get
(
guid
);
LOG
.
debug
(
"Cache hit: guid = {}, entityId = {}"
,
guid
,
typedReference
.
getId
().
_getId
());
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Cache hit: guid = {}, entityId = {}"
,
guid
,
typedReference
.
getId
().
_getId
());
}
}
else
{
}
else
{
typedReference
=
typedReference
=
graphToTypedInstanceMapper
.
mapGraphToTypedInstance
(
guid
,
instanceVertex
);
graphToTypedInstanceMapper
.
mapGraphToTypedInstance
(
guid
,
instanceVertex
);
instanceCache
.
put
(
guid
,
typedReference
);
instanceCache
.
put
(
guid
,
typedReference
);
LOG
.
debug
(
"Cache miss: guid = {}, entityId = {}"
,
guid
,
typedReference
.
getId
().
getId
());
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Cache miss: guid = {}, entityId = {}"
,
guid
,
typedReference
.
getId
().
getId
());
}
}
}
String
fullText
=
forInstance
(
typedReference
,
followReferences
);
String
fullText
=
forInstance
(
typedReference
,
followReferences
);
StringBuilder
fullTextBuilder
=
StringBuilder
fullTextBuilder
=
...
...
repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedMetadataRepository.java
View file @
34d235f3
...
@@ -136,7 +136,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -136,7 +136,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@GraphTransaction
@GraphTransaction
public
List
<
String
>
createEntities
(
ITypedReferenceableInstance
...
entities
)
throws
RepositoryException
,
public
List
<
String
>
createEntities
(
ITypedReferenceableInstance
...
entities
)
throws
RepositoryException
,
EntityExistsException
{
EntityExistsException
{
LOG
.
debug
(
"adding entities={}"
,
entities
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"adding entities={}"
,
entities
);
}
try
{
try
{
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
CREATE
,
entities
);
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
CREATE
,
entities
);
...
@@ -151,7 +154,9 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -151,7 +154,9 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
ITypedReferenceableInstance
getEntityDefinition
(
String
guid
)
throws
RepositoryException
,
EntityNotFoundException
{
public
ITypedReferenceableInstance
getEntityDefinition
(
String
guid
)
throws
RepositoryException
,
EntityNotFoundException
{
LOG
.
debug
(
"Retrieving entity with guid={}"
,
guid
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Retrieving entity with guid={}"
,
guid
);
}
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
...
@@ -166,7 +171,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -166,7 +171,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@GraphTransaction
@GraphTransaction
public
ITypedReferenceableInstance
getEntityDefinition
(
String
entityType
,
String
attribute
,
Object
value
)
public
ITypedReferenceableInstance
getEntityDefinition
(
String
entityType
,
String
attribute
,
Object
value
)
throws
AtlasException
{
throws
AtlasException
{
LOG
.
debug
(
"Retrieving entity with type={} and {}={}"
,
entityType
,
attribute
,
value
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Retrieving entity with type={} and {}={}"
,
entityType
,
attribute
,
value
);
}
IDataType
type
=
typeSystem
.
getDataType
(
IDataType
.
class
,
entityType
);
IDataType
type
=
typeSystem
.
getDataType
(
IDataType
.
class
,
entityType
);
String
propertyKey
=
getFieldNameInVertex
(
type
,
attribute
);
String
propertyKey
=
getFieldNameInVertex
(
type
,
attribute
);
AtlasVertex
instanceVertex
=
graphHelper
.
findVertex
(
propertyKey
,
value
,
AtlasVertex
instanceVertex
=
graphHelper
.
findVertex
(
propertyKey
,
value
,
...
@@ -180,7 +188,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -180,7 +188,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
List
<
String
>
getEntityList
(
String
entityType
)
throws
RepositoryException
{
public
List
<
String
>
getEntityList
(
String
entityType
)
throws
RepositoryException
{
LOG
.
debug
(
"Retrieving entity list for type={}"
,
entityType
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Retrieving entity list for type={}"
,
entityType
);
}
AtlasGraphQuery
query
=
graph
.
query
().
has
(
Constants
.
ENTITY_TYPE_PROPERTY_KEY
,
entityType
);
AtlasGraphQuery
query
=
graph
.
query
().
has
(
Constants
.
ENTITY_TYPE_PROPERTY_KEY
,
entityType
);
Iterator
<
AtlasVertex
>
results
=
query
.
vertices
().
iterator
();
Iterator
<
AtlasVertex
>
results
=
query
.
vertices
().
iterator
();
if
(!
results
.
hasNext
())
{
if
(!
results
.
hasNext
())
{
...
@@ -206,7 +217,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -206,7 +217,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
List
<
String
>
getTraitNames
(
String
guid
)
throws
AtlasException
{
public
List
<
String
>
getTraitNames
(
String
guid
)
throws
AtlasException
{
LOG
.
debug
(
"Retrieving trait names for entity={}"
,
guid
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Retrieving trait names for entity={}"
,
guid
);
}
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
return
GraphHelper
.
getTraitNames
(
instanceVertex
);
return
GraphHelper
.
getTraitNames
(
instanceVertex
);
}
}
...
@@ -224,7 +238,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -224,7 +238,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
public
void
addTrait
(
String
guid
,
ITypedStruct
traitInstance
)
throws
RepositoryException
{
public
void
addTrait
(
String
guid
,
ITypedStruct
traitInstance
)
throws
RepositoryException
{
Preconditions
.
checkNotNull
(
traitInstance
,
"Trait instance cannot be null"
);
Preconditions
.
checkNotNull
(
traitInstance
,
"Trait instance cannot be null"
);
final
String
traitName
=
traitInstance
.
getTypeName
();
final
String
traitName
=
traitInstance
.
getTypeName
();
LOG
.
debug
(
"Adding a new trait={} for entity={}"
,
traitName
,
guid
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Adding a new trait={} for entity={}"
,
traitName
,
guid
);
}
try
{
try
{
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
...
@@ -260,7 +277,9 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -260,7 +277,9 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
void
deleteTrait
(
String
guid
,
String
traitNameToBeDeleted
)
throws
TraitNotFoundException
,
EntityNotFoundException
,
RepositoryException
{
public
void
deleteTrait
(
String
guid
,
String
traitNameToBeDeleted
)
throws
TraitNotFoundException
,
EntityNotFoundException
,
RepositoryException
{
LOG
.
debug
(
"Deleting trait={} from entity={}"
,
traitNameToBeDeleted
,
guid
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Deleting trait={} from entity={}"
,
traitNameToBeDeleted
,
guid
);
}
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
AtlasVertex
instanceVertex
=
graphHelper
.
getVertexForGUID
(
guid
);
...
@@ -303,7 +322,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -303,7 +322,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
AtlasClient
.
EntityResult
updateEntities
(
ITypedReferenceableInstance
...
entitiesUpdated
)
throws
RepositoryException
{
public
AtlasClient
.
EntityResult
updateEntities
(
ITypedReferenceableInstance
...
entitiesUpdated
)
throws
RepositoryException
{
LOG
.
debug
(
"updating entity {}"
,
entitiesUpdated
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"updating entity {}"
,
entitiesUpdated
);
}
try
{
try
{
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
UPDATE_FULL
,
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
UPDATE_FULL
,
...
@@ -319,7 +341,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
...
@@ -319,7 +341,10 @@ public class GraphBackedMetadataRepository implements MetadataRepository {
@Override
@Override
@GraphTransaction
@GraphTransaction
public
AtlasClient
.
EntityResult
updatePartial
(
ITypedReferenceableInstance
entity
)
throws
RepositoryException
{
public
AtlasClient
.
EntityResult
updatePartial
(
ITypedReferenceableInstance
entity
)
throws
RepositoryException
{
LOG
.
debug
(
"updating entity {}"
,
entity
);
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"updating entity {}"
,
entity
);
}
try
{
try
{
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
TypedInstanceToGraphMapper
instanceToGraphMapper
=
new
TypedInstanceToGraphMapper
(
graphToInstanceMapper
,
deleteHandler
);
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
UPDATE_PARTIAL
,
entity
);
instanceToGraphMapper
.
mapTypedInstanceToGraph
(
TypedInstanceToGraphMapper
.
Operation
.
UPDATE_PARTIAL
,
entity
);
...
...
repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedSearchIndexer.java
View file @
34d235f3
...
@@ -233,7 +233,10 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
...
@@ -233,7 +233,10 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
AtlasGraphManagement
management
=
provider
.
get
().
getManagementSystem
();
AtlasGraphManagement
management
=
provider
.
get
().
getManagementSystem
();
for
(
IDataType
dataType
:
dataTypes
)
{
for
(
IDataType
dataType
:
dataTypes
)
{
LOG
.
debug
(
"Creating indexes for type name={}, definition={}"
,
dataType
.
getName
(),
dataType
.
getClass
());
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Creating indexes for type name={}, definition={}"
,
dataType
.
getName
(),
dataType
.
getClass
());
}
try
{
try
{
addIndexForType
(
management
,
dataType
);
addIndexForType
(
management
,
dataType
);
LOG
.
info
(
"Index creation for type {} complete"
,
dataType
.
getName
());
LOG
.
info
(
"Index creation for type {} complete"
,
dataType
.
getName
());
...
@@ -506,17 +509,17 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
...
@@ -506,17 +509,17 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
AtlasPropertyKey
propertyKey
,
boolean
enforceUniqueness
)
{
AtlasPropertyKey
propertyKey
,
boolean
enforceUniqueness
)
{
String
propertyName
=
propertyKey
.
getName
();
String
propertyName
=
propertyKey
.
getName
();
LOG
.
debug
(
"Creating composite index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Creating composite index for property {} of type {}; isUnique={} "
,
propertyName
,
propertyClass
.
getName
(),
enforceUniqueness
);
}
AtlasGraphIndex
existingIndex
=
management
.
getGraphIndex
(
propertyName
);
AtlasGraphIndex
existingIndex
=
management
.
getGraphIndex
(
propertyName
);
if
(
existingIndex
==
null
)
{
if
(
existingIndex
==
null
)
{
if
(
enforceUniqueness
)
{
LOG
.
debug
(
"Enabling unique index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
}
management
.
createExactMatchIndex
(
propertyName
,
enforceUniqueness
,
Collections
.
singletonList
(
propertyKey
));
management
.
createExactMatchIndex
(
propertyName
,
enforceUniqueness
,
Collections
.
singletonList
(
propertyKey
));
}
}
LOG
.
info
(
"Created composite index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
LOG
.
info
(
"Created composite index for property {} of type {}; isUnique={} "
,
propertyName
,
propertyClass
.
getName
(),
enforceUniqueness
);
}
}
...
@@ -536,8 +539,10 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
...
@@ -536,8 +539,10 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
Class
propertyClass
,
AtlasPropertyKey
propertyKey
,
final
String
systemPropertyKey
,
Class
propertyClass
,
AtlasPropertyKey
propertyKey
,
final
String
systemPropertyKey
,
AtlasCardinality
cardinality
)
{
AtlasCardinality
cardinality
)
{
LOG
.
debug
(
"Creating composite index for property {} of type {} and {}"
,
propertyKey
.
getName
(),
propertyClass
.
getName
(),
if
(
LOG
.
isDebugEnabled
())
{
systemPropertyKey
);
LOG
.
debug
(
"Creating composite index for property {} of type {} and {}"
,
propertyKey
.
getName
(),
propertyClass
.
getName
(),
systemPropertyKey
);
}
AtlasPropertyKey
typePropertyKey
=
management
.
getPropertyKey
(
systemPropertyKey
);
AtlasPropertyKey
typePropertyKey
=
management
.
getPropertyKey
(
systemPropertyKey
);
if
(
typePropertyKey
==
null
)
{
if
(
typePropertyKey
==
null
)
{
...
@@ -562,9 +567,12 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
...
@@ -562,9 +567,12 @@ public class GraphBackedSearchIndexer implements SearchIndexer, ActiveStateCh
private
void
updateVertexIndex
(
AtlasGraphManagement
management
,
String
propertyName
,
Class
propertyClass
,
private
void
updateVertexIndex
(
AtlasGraphManagement
management
,
String
propertyName
,
Class
propertyClass
,
AtlasCardinality
cardinality
,
AtlasPropertyKey
propertyKey
)
{
AtlasCardinality
cardinality
,
AtlasPropertyKey
propertyKey
)
{
if
(
checkIfVertexIndexApplicable
(
propertyClass
,
cardinality
))
{
if
(
checkIfVertexIndexApplicable
(
propertyClass
,
cardinality
))
{
if
(
LOG
.
isDebugEnabled
())
{
LOG
.
debug
(
"Creating backing index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
}
// Use backing index
// Use backing index
management
.
addVertexIndexKey
(
Constants
.
VERTEX_INDEX
,
propertyKey
);
management
.
addVertexIndexKey
(
Constants
.
VERTEX_INDEX
,
propertyKey
);
LOG
.
debug
(
"Creating backing index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
LOG
.
info
(
"Created backing index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
LOG
.
info
(
"Created backing index for property {} of type {} "
,
propertyName
,
propertyClass
.
getName
());
}
}
...
...
repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java
View file @
34d235f3
This diff is collapsed.
Click to expand it.
repository/src/main/java/org/apache/atlas/repository/graph/GraphToTypedInstanceMapper.java
View file @
34d235f3
This diff is collapsed.
Click to expand it.
repository/src/main/java/org/apache/atlas/repository/graph/TypedInstanceToGraphMapper.java
View file @
34d235f3
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment