Re: Review Request 73292: ATLAS-4254 : Basic Search : Optimize pagination

2021-05-07 Thread Pinal Shah

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/73292/
---

(Updated May 7, 2021, 12:40 p.m.)


Review request for atlas, Ashutosh Mestry, Jayendra Parab, Madhan Neethiraj, 
and Sarath Subramanian.


Changes
---

refactored


Bugs: ATLAS-4254
https://issues.apache.org/jira/browse/ATLAS-4254


Repository: atlas


Description (updated)
---

**Current Working of Pagination**

- When user specifies page information i.e offset and limit in the request, 
except some condition, offset is reset to 0
- Query is then executed from 0 offset and limit
- Filter out the results obtained from query
- Generate result set by skipping the results from 0 to the given offset

**New Working Structure**

- New Parameter 'marker' (String) has been introduced in SearchParameters which 
will have encrypted string as value.
- The marker should be  set as '*' for the start of the page
- The response of above request (AtlasSearchResult) will have 'nextMarker' 
field which will have encrypted String which is to be passed as value of 
'marker' in the subsequent request
- if marker is set then offset should not be greater than 0


**Perfomance details**

Took usecase of ranger tagsync:
- On searching tagged entities starting with offset: 0 and limit: 1000 returned 
1 entities in ~ 21s
- On searching tagged entities starting with marker: * and limit: 1000 returned 
1 entities in ~ 10s
(both the number are taken on the fresh start of the server, so as to avoid 
caching affecting the numbers)
- Around 51% improvement

- Improvement is seen as the page size increases.


Diffs (updated)
-

  intg/src/main/java/org/apache/atlas/model/discovery/AtlasSearchResult.java 
e1c550ef7 
  intg/src/main/java/org/apache/atlas/model/discovery/SearchParameters.java 
9d2cd4ffc 
  
repository/src/main/java/org/apache/atlas/discovery/ClassificationSearchProcessor.java
 647ff9ca0 
  
repository/src/main/java/org/apache/atlas/discovery/EntityDiscoveryService.java 
a3ab6e38c 
  
repository/src/main/java/org/apache/atlas/discovery/EntitySearchProcessor.java 
5dcff3b16 
  
repository/src/main/java/org/apache/atlas/discovery/FreeTextSearchProcessor.java
 92152fff5 
  
repository/src/main/java/org/apache/atlas/discovery/FullTextSearchProcessor.java
 b37d93a83 
  repository/src/main/java/org/apache/atlas/discovery/SearchContext.java 
aa49121f6 
  repository/src/main/java/org/apache/atlas/discovery/SearchProcessor.java 
f9832c3b2 
  repository/src/main/java/org/apache/atlas/discovery/TermSearchProcessor.java 
45a815886 
  
repository/src/test/java/org/apache/atlas/discovery/AtlasDiscoveryServiceTest.java
 027827af2 
  
repository/src/test/java/org/apache/atlas/discovery/ClassificationSearchProcessorTest.java
 e1ebbfc70 
  webapp/src/main/java/org/apache/atlas/web/rest/DiscoveryREST.java 4c7b6228d 


Diff: https://reviews.apache.org/r/73292/diff/3/

Changes: https://reviews.apache.org/r/73292/diff/2-3/


Testing
---

MAnual testing
unit testcases


Thanks,

Pinal Shah



[jira] [Created] (ATLAS-4277) [Atlas: Glossary Term Bulk Import] [Regression] Unable to create term term_1 under glossary glossary_1 via bulk import

2021-05-07 Thread Dharshana M Krishnamoorthy (Jira)
Dharshana M Krishnamoorthy created ATLAS-4277:
-

 Summary: [Atlas: Glossary Term Bulk Import] [Regression] Unable to 
create term term_1 under glossary glossary_1 via bulk import
 Key: ATLAS-4277
 URL: https://issues.apache.org/jira/browse/ATLAS-4277
 Project: Atlas
  Issue Type: Bug
Reporter: Dharshana M Krishnamoorthy


Unable to create term *term_1* under glossary *glossary_1* the cluster with 
latest bits

Import input:
{code:java}
GlossaryName, TermName, ShortDescription, LongDescription, Examples, 
Abbreviation, Usage, AdditionalAttributes, TranslationTerms, ValidValuesFor, 
Synonyms, ReplacedBy, ValidValues, ReplacementTerms, SeeAlso, TranslatedTerms, 
IsA, Antonyms, Classifies, PreferredToTerms, PreferredTerms glossary_1,term_1
glossary_1,term_2{code}
Current result:
{code:java}
{
  "failedImportInfoList":[
{
  "parentObjectName":"glossary_1",
  "childObjectName":"term_1",
  "importStatus":"FAILED",
  "remarks":"Glossary term with qualifiedName term_1@glossary_1 already 
exists"
}
  ],
  "successImportInfoList":[
{
  "parentObjectName":"glossary_1",
  "childObjectName":"term_2",
  "importStatus":"SUCCESS",
  
"remarks":"{\"termGuid\":\"8fe9a26a-aa14-4ed4-9a37-ef6db69ec29b\",\"qualifiedName\":\"term_2@glossary_1\"}"
}
  ]
} {code}
Even though there is no glossary with name glossary_1 and you are creating it 
for the first time, this error is thrown.

This was working fine on the older bits



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (ATLAS-4264) SqoopHook throwing an error

2021-05-07 Thread Arpit Shah (Jira)


[ 
https://issues.apache.org/jira/browse/ATLAS-4264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17340696#comment-17340696
 ] 

Arpit Shah commented on ATLAS-4264:
---

[~limbo] 

I have tried with a default value "2147483647" but getting the same error.

I have changed the search backend from elasticsearch to solr 8.6.0 and now I am 
getting the below error.

 

org.apache.atlas.AtlasException: Failed to load application properties

    at 
org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:147)

    at 
org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:100)

    at org.apache.atlas.hook.AtlasHook.(AtlasHook.java:80)

    at org.apache.atlas.sqoop.hook.SqoopHook.(SqoopHook.java:82)

    at java.lang.Class.forName0(Native Method)

    at java.lang.Class.forName(Class.java:264)

    at 
org.apache.sqoop.mapreduce.PublishJobData.publishJobData(PublishJobData.java:46)

    at 
org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:284)

    at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)

    at 
org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:127)

    at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:520)

    at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:628)

    at org.apache.sqoop.Sqoop.run(Sqoop.java:147)

    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)

    at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)

    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)

    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)

    at org.apache.sqoop.Sqoop.main(Sqoop.java:252)

Caused by: org.apache.commons.configuration.ConversionException: 
'atlas.graph.index.search.solr.wait-searcher' doesn't map to a List object: 
true, a java.lang.Boolean

    at 
org.apache.commons.configuration.AbstractConfiguration.getList(AbstractConfiguration.java:1144)

    at 
org.apache.commons.configuration.AbstractConfiguration.getList(AbstractConfiguration.java:1109)

    at 
org.apache.commons.configuration.AbstractConfiguration.interpolatedConfiguration(AbstractConfiguration.java:1274)

    at 
org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:142)

    ... 17 more

Exception in thread "main" java.lang.ExceptionInInitializerError

    at org.apache.atlas.sqoop.hook.SqoopHook.(SqoopHook.java:82)

    at java.lang.Class.forName0(Native Method)

    at java.lang.Class.forName(Class.java:264)

    at 
org.apache.sqoop.mapreduce.PublishJobData.publishJobData(PublishJobData.java:46)

    at 
org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:284)

    at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)

    at 
org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:127)

    at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:520)

    at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:628)

    at org.apache.sqoop.Sqoop.run(Sqoop.java:147)

    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)

    at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)

    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)

    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)

    at org.apache.sqoop.Sqoop.main(Sqoop.java:252)

Caused by: java.lang.NullPointerException

    at org.apache.atlas.hook.AtlasHook.(AtlasHook.java:85)

    ... 15 more

> SqoopHook throwing an error
> ---
>
> Key: ATLAS-4264
> URL: https://issues.apache.org/jira/browse/ATLAS-4264
> Project: Atlas
>  Issue Type: Bug
>  Components: sqoop-integration
>Affects Versions: 2.1.0
> Environment: Linux
>Reporter: Arpit Shah
>Priority: Major
>  Labels: RedHat
>
> Hi all,
> I am exploring the apache atlas. I am trying to configure sqoop hook for 
> Atlas but facing the error.
> I have configured Apache Atlas 2.1.0 with Hbase and elasticsearch.
> I am using sqoop 1.4.7 with Hadoop version 3.3.0.
> I have followed all the steps for configuring SqoopHook mentioned in the 
> atlas doc.
>  
> I am facing the below error after the successful completion of the map-reduce 
> job.
>  
>  
> org.apache.atlas.AtlasException: Failed to load application properties
>     at 
> org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:147)
>     at 
> org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:100)
>     at org.apache.atlas.hook.AtlasHook.(AtlasHook.java:80)
>     at org.apache.atlas.sqoop.hook.SqoopHook.(SqoopHook.java:82)
>     at java.lang.Class.forName0(Native Method)
>     at java.lang.Class.forName(Class.java:264)
>     at 
> 

[jira] [Commented] (ATLAS-4264) SqoopHook throwing an error

2021-05-07 Thread limbo (Jira)


[ 
https://issues.apache.org/jira/browse/ATLAS-4264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17340680#comment-17340680
 ] 

limbo commented on ATLAS-4264:
--

It looks like getString rather than getInt

> SqoopHook throwing an error
> ---
>
> Key: ATLAS-4264
> URL: https://issues.apache.org/jira/browse/ATLAS-4264
> Project: Atlas
>  Issue Type: Bug
>  Components: sqoop-integration
>Affects Versions: 2.1.0
> Environment: Linux
>Reporter: Arpit Shah
>Priority: Major
>  Labels: RedHat
>
> Hi all,
> I am exploring the apache atlas. I am trying to configure sqoop hook for 
> Atlas but facing the error.
> I have configured Apache Atlas 2.1.0 with Hbase and elasticsearch.
> I am using sqoop 1.4.7 with Hadoop version 3.3.0.
> I have followed all the steps for configuring SqoopHook mentioned in the 
> atlas doc.
>  
> I am facing the below error after the successful completion of the map-reduce 
> job.
>  
>  
> org.apache.atlas.AtlasException: Failed to load application properties
>     at 
> org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:147)
>     at 
> org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:100)
>     at org.apache.atlas.hook.AtlasHook.(AtlasHook.java:80)
>     at org.apache.atlas.sqoop.hook.SqoopHook.(SqoopHook.java:82)
>     at java.lang.Class.forName0(Native Method)
>     at java.lang.Class.forName(Class.java:264)
>     at 
> org.apache.sqoop.mapreduce.PublishJobData.publishJobData(PublishJobData.java:46)
>     at 
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:284)
>     at 
> org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)
>     at 
> org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:127)
>     at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:520)
>     at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:628)
>     at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
>     at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
>     at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
>     at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
>     at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
>     at org.apache.sqoop.Sqoop.main(Sqoop.java:252)
> Caused by: org.apache.commons.configuration.ConversionException: 
> 'atlas.graph.index.search.max-result-set-size' doesn't map to a List object: 
> 50, a java.lang.Integer
>     at 
> org.apache.commons.configuration.AbstractConfiguration.getList(AbstractConfiguration.java:1144)
>     at 
> org.apache.commons.configuration.AbstractConfiguration.getList(AbstractConfiguration.java:1109)
>     at 
> org.apache.commons.configuration.AbstractConfiguration.interpolatedConfiguration(AbstractConfiguration.java:1274)
>     at 
> org.apache.atlas.ApplicationProperties.get(ApplicationProperties.java:142)
>     ... 17 more
> Exception in thread "main" java.lang.ExceptionInInitializerError
>     at org.apache.atlas.sqoop.hook.SqoopHook.(SqoopHook.java:82)
>     at java.lang.Class.forName0(Native Method)
>     at java.lang.Class.forName(Class.java:264)
>     at 
> org.apache.sqoop.mapreduce.PublishJobData.publishJobData(PublishJobData.java:46)
>     at 
> org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:284)
>     at 
> org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)
>     at 
> org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:127)
>     at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:520)
>     at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:628)
>     at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
>     at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
>     at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
>     at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
>     at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
>     at org.apache.sqoop.Sqoop.main(Sqoop.java:252)
> Caused by: java.lang.NullPointerException
>     at org.apache.atlas.hook.AtlasHook.(AtlasHook.java:85)
>     ... 15 more



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (ATLAS-4276) [Atlas: Glossary Term Bulk Import] Unhandled exception java.lang.ArrayIndexOutOfBoundsException thrown, when related terms are not provided in the right format

2021-05-07 Thread Dharshana M Krishnamoorthy (Jira)
Dharshana M Krishnamoorthy created ATLAS-4276:
-

 Summary: [Atlas: Glossary Term Bulk Import] Unhandled exception 
java.lang.ArrayIndexOutOfBoundsException thrown, when related terms are not 
provided in the right format
 Key: ATLAS-4276
 URL: https://issues.apache.org/jira/browse/ATLAS-4276
 Project: Atlas
  Issue Type: Bug
Reporter: Dharshana M Krishnamoorthy


Input:
{code:java}
GlossaryName, TermName, ShortDescription, LongDescription, Examples, 
Abbreviation, Usage, AdditionalAttributes, TranslationTerms, ValidValuesFor, 
Synonyms, ReplacedBy, ValidValues, ReplacementTerms, SeeAlso, TranslatedTerms, 
IsA, Antonyms, Classifies, PreferredToTerms, PreferredTerms 
dharsh,term_1,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%""abcd", {code}
Here term is provided as "abcd" instead of glossary@term format

The following exception is thrown, which is an Internal server error
{code:java}
2021-05-07 06:31:39,080 ERROR - [etp1770642014-187 - 
11bce930-c6b9-4eec-a353-a553450425bb:] ~ Error handling a request: 
a2e852df89225e3a (ExceptionMapperUtil:32)2021-05-07 06:31:39,080 ERROR - 
[etp1770642014-187 - 11bce930-c6b9-4eec-a353-a553450425bb:] ~ Error handling a 
request: a2e852df89225e3a 
(ExceptionMapperUtil:32)java.lang.ArrayIndexOutOfBoundsException: 1 at 
org.apache.atlas.glossary.GlossaryTermUtils.getAtlasRelatedTermHeaderSet(GlossaryTermUtils.java:718)
 at 
org.apache.atlas.glossary.GlossaryTermUtils.populateGlossaryTermObject(GlossaryTermUtils.java:778)
 at 
org.apache.atlas.glossary.GlossaryTermUtils.getGlossaryTermDataWithRelations(GlossaryTermUtils.java:610)
 at 
org.apache.atlas.glossary.GlossaryService.importGlossaryData(GlossaryService.java:1134)
 at 
org.apache.atlas.glossary.GlossaryService$$FastClassBySpringCGLIB$$e1f893e0.invoke()
 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:668)
 at 
org.apache.atlas.glossary.GlossaryService$$EnhancerBySpringCGLIB$$3c19046e.importGlossaryData()
 at 
org.apache.atlas.web.rest.GlossaryREST.importGlossaryData(GlossaryREST.java:1021)
 at 
org.apache.atlas.web.rest.GlossaryREST$$FastClassBySpringCGLIB$$29dc059.invoke()
 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:737)
 at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
 at 
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:84)
 at 
org.apache.atlas.web.service.TimedAspectInterceptor.timerAdvice(TimedAspectInterceptor.java:46)
 at sun.reflect.GeneratedMethodAccessor208.invoke(Unknown Source) at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498) at 
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:627)
 at 
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:616)
 at 
org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
 at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
 at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
 at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:672)
 at 
org.apache.atlas.web.rest.GlossaryREST$$EnhancerBySpringCGLIB$$d1d409d6.importGlossaryData()
 at sun.reflect.GeneratedMethodAccessor331.invoke(Unknown Source) at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498) at 
com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
 at 
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
 at 
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
 at 
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
 at 
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
 at 
com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
 at 
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
 at 

[jira] [Updated] (ATLAS-4275) [Atlas: Glossary Term Bulk Import] When there an incorrect data in preferred term column, it is not considered while importing

2021-05-07 Thread Dharshana M Krishnamoorthy (Jira)


 [ 
https://issues.apache.org/jira/browse/ATLAS-4275?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dharshana M Krishnamoorthy updated ATLAS-4275:
--
Description: 
When there is an error in the PreferredTerms of the input, error is not 
considered

Consider the following input. Here the provided term "abcd:efgh" does not 
exists in the system. 
 The error is thrown when it is provided as an input for "*PreferredToTerms*" 
column but not for "*PreferredTerms*" column
{code:java}
GlossaryName, TermName, ShortDescription, LongDescription, Examples, 
Abbreviation, Usage, AdditionalAttributes, TranslationTerms, ValidValuesFor, 
Synonyms, ReplacedBy, ValidValues, ReplacementTerms, SeeAlso, TranslatedTerms, 
IsA, Antonyms, Classifies, PreferredToTerms, PreferredTerms
dharsh,term_1,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%","abcd:efgh"
dharsh,term_2,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%""abcd:efgh", {code}
 

*Expectation:*
 2 failed message info should be thrown one for term_1(incorrect 
PreferredTerms) and the other for term_2(incorrect PreferredToTerms), but only 
1 is thrown

 

*Current output:*
{code:java}
{
  "failedImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "FAILED",
  "remarks": "The provided Reference efgh@abcd does not exist at Atlas 
referred at record with TermName  : term_2 and GlossaryName : dharsh"
}
  ],
  "successImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_1",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"284fe9a7-911c-423a-90bf-adf8231afb27\",\"qualifiedName\":\"term_1@dharsh\"}"
},
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"29a51c8a-ce92-4988-8fca-feaf683c58dd\",\"qualifiedName\":\"term_2@dharsh\"}"
}
  ]
} {code}
 

*Expected output:*
{code:java}
{
  "failedImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_1",
  "importStatus": "FAILED",
  "remarks": "The provided Reference efgh@abcd does not exist at Atlas 
referred at record with TermName  : term_1 and GlossaryName : dharsh"
},
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "FAILED",
  "remarks": "The provided Reference efgh@abcd does not exist at Atlas 
referred at record with TermName  : term_2 and GlossaryName : dharsh"
}
  ],
  "successImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_1",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"284fe9a7-911c-423a-90bf-adf8231afb27\",\"qualifiedName\":\"term_1@dharsh\"}"
},
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"29a51c8a-ce92-4988-8fca-feaf683c58dd\",\"qualifiedName\":\"term_2@dharsh\"}"
}
  ]
}  {code}

  was:
When there is an error in the PreferredTerms of the input, error is not 
considered

Consider the following input. Here the provided term "abcd:efgh" does not 
exists in the system. 
The error is thrown when it is provided as an input for "*PreferredToTerms*" 
column but not for "*PreferredTerms*" column
{code:java}
GlossaryName, TermName, ShortDescription, LongDescription, Examples, 
Abbreviation, Usage, AdditionalAttributes, TranslationTerms, ValidValuesFor, 
Synonyms, ReplacedBy, ValidValues, ReplacementTerms, SeeAlso, TranslatedTerms, 
IsA, Antonyms, Classifies, PreferredToTerms, PreferredTerms
dharsh,term_1,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%","abcd:efgh"
dharsh,term_2,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%""abcd:efgh", {code}
 

*Expectation:*
2 failed message info should be thrown one for term_1(incorrect PreferredTerms) 
and the other for term_2(incorrect PreferredToTerms), but only 1 is thrown

 

*Current output:*
{code:java}
{
  "failedImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "FAILED",
  "remarks": "The provided Reference efgh@abcd does not exist at Atlas 
referred at record with TermName  : term_2 and GlossaryName : dharsh"
}
  ],
  "successImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_1",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"284fe9a7-911c-423a-90bf-adf8231afb27\",\"qualifiedName\":\"term_1@dharsh\"}"
},
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "SUCCESS",
  "remarks": 

[jira] [Created] (ATLAS-4275) [Atlas: Glossary Term Bulk Import] When there an incorrect data in preferred term column, it is not considered while importing

2021-05-07 Thread Dharshana M Krishnamoorthy (Jira)
Dharshana M Krishnamoorthy created ATLAS-4275:
-

 Summary: [Atlas: Glossary Term Bulk Import] When there an 
incorrect data in preferred term column, it is not considered while importing
 Key: ATLAS-4275
 URL: https://issues.apache.org/jira/browse/ATLAS-4275
 Project: Atlas
  Issue Type: Bug
  Components:  atlas-core
Reporter: Dharshana M Krishnamoorthy


When there is an error in the PreferredTerms of the input, error is not 
considered

Consider the following input. Here the provided term "abcd:efgh" does not 
exists in the system. 
The error is thrown when it is provided as an input for "*PreferredToTerms*" 
column but not for "*PreferredTerms*" column
{code:java}
GlossaryName, TermName, ShortDescription, LongDescription, Examples, 
Abbreviation, Usage, AdditionalAttributes, TranslationTerms, ValidValuesFor, 
Synonyms, ReplacedBy, ValidValues, ReplacementTerms, SeeAlso, TranslatedTerms, 
IsA, Antonyms, Classifies, PreferredToTerms, PreferredTerms
dharsh,term_1,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%","abcd:efgh"
dharsh,term_2,"short desc","long description", "Example", "G1", "Usage", 
"glossary:100%""abcd:efgh", {code}
 

*Expectation:*
2 failed message info should be thrown one for term_1(incorrect PreferredTerms) 
and the other for term_2(incorrect PreferredToTerms), but only 1 is thrown

 

*Current output:*
{code:java}
{
  "failedImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "FAILED",
  "remarks": "The provided Reference efgh@abcd does not exist at Atlas 
referred at record with TermName  : term_2 and GlossaryName : dharsh"
}
  ],
  "successImportInfoList": [
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_1",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"284fe9a7-911c-423a-90bf-adf8231afb27\",\"qualifiedName\":\"term_1@dharsh\"}"
},
{
  "parentObjectName": "dharsh",
  "childObjectName": "term_2",
  "importStatus": "SUCCESS",
  "remarks": 
"{\"termGuid\":\"29a51c8a-ce92-4988-8fca-feaf683c58dd\",\"qualifiedName\":\"term_2@dharsh\"}"
}
  ]
} {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)