Age | Commit message (Collapse) | Author | Files | Lines |
|
Use maven plugins from AAI-2198 to do batch reformat of aai-core
to consistent code style.
Change-Id: If43889a61778f3a766c3663098064cdcc8e507bf
Issue-ID: AAI-1523
Signed-off-by: Keong Lim <keong.lim@huawei.com>
|
|
with adding relationships to edge rules in
older versions of the api that might not be
in the latest versions of the API
Issue-ID: AAI-2325
Change-Id: I78fa1c747c4c52a01d2d6ed762e0dc4cdf448fee
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
The following code has been moved to schema service
Issue-ID: AAI-2313
Change-Id: I58911dffef70ab2c32a73de79ac971c3650106e6
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
|
|
|
|
|
|
|
|
when all of the schema failed to load
so the microservice wouldn't be in a
bad state and also have the microservice
dictate what versions of schema they are using
Issue-ID: AAI-2329
Change-Id: Ie2e6e2bb3bac37b2ad57ada613e7c0e65647b64e
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Change from using the MDC to use Logging Context
When an update happens on a vertex,
there is no need to update the aai-node-type
as a vertex type will not be modified and
this causes some issues with how janusgraph works
Issue-ID: AAI-2325
Change-Id: Iee51fea0dcd5e80636b8303f5f69346f8d653aa0
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
check if indexes are needed on dbaliased properties
Added test to verify indexes are created.
Issue-ID: AAI-2333
Change-Id: Ib80de5cce3dfc99277d7cbd6e1a51530ff588478
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
After doing some analysis using profiler
found that the most cases where memory is being
spent when doing an GET is during the conversion
from one case to another case and instead
cached that during the start of the application
Issue-ID: AAI-2331
Change-Id: I291d5f953d4158daca293198cf6fc7f5cf86d25d
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
application is doing implicit delete so if an
user did a PUT on cloud region in which they implicitly
delete 100 tenants, it would log the specific tenants that got deleted with depth all on
tenants because a cloud region could also have thousands of other child
objects and there is no reason to log that if we can just log the
objects that were lost in the implicit delete process
Issue-ID: AAI-2332
Change-Id: I8cd0c876670f8687b6485d3735f9f47e84c38286
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
where the assumption is the aai-node-type property will
exist on the node types. There is a case where a vertex
is in the process of being deleted and during that time
the vertex will be missing some properties and during
that time the GET with depth all will result in exception
This is possible because of our database being
an eventually consistent database
Issue-ID: AAI-2330
Change-Id: I2b11c9a2ec5c3b6bffd2690a0c075962e80781cc
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
|
|
Removed sysout and replaced with logger
Issue-ID: AAI-2085
Change-Id: I0f90b137d3d46ae80a4de2492cf335cd5016a521
Signed-off-by: Chandan Ghosh <cghosh12@in.ibm.com>
|
|
|
|
GremlinGroovy shell singleton and groovy builder singleton
were changed from being singleton because we found
that the classes that were dynamically loaded
were never cleaned up by the garbage collector
which caused a huge increase in the memory consumption
for the traversal microservice which uses this
The conversions from singleton was already committed
but the singleton was not cleaned up earlier
Issue-ID: AAI-1811
Change-Id: Ib74d85be4c1053e7b482fa5b89b562b2352ff803
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Issue-ID: AAI-1811
Change-Id: I307731ee35d8a644ae995c4b372345a7ebeca0a1
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
Signed-off-by: Harish Venkata Kajur <vk250x@att.com>
|
|
Sonar Fix (AAIAuthCore.java - Define a constant instead of duplicating this literal "AAI_4001" 3 times.)
Issue-ID: AAI-2065
Change-Id: Ic9c343f814dc220fe118b21ae08f29a65a337da7
Signed-off-by: Driptaroop Das <driptaroop.das@in.ibm.com>
|
|
ListEndpoints.java - added logger along with system.err
Issue-ID: AAI-2062
Change-Id: Icc0953ae8061a068a1dec978d657e40cad49552d
Signed-off-by: Driptaroop Das <driptaroop.das@in.ibm.com>
|
|
|
|
Enhance the code for how the db serializer works
when it comes to dealing with the relationships
For a particular vertex, when retrieving its relationship vertexes
it doesn't need to get all the properties of the relationship vertex
as it only cares about the aai-uri and named properties
so only partially retrieving those props that is needed for relationships
Issue-ID: AAI-1987
Change-Id: I1440c561d187ff180a599a3f52ac5c8715d5c8e3
Signed-off-by: Harish Venkata Kajur <vk250x@att.com>
|
|
Issue-ID: AAI-2003
Change-Id: I9234b6b594e559b58e445a97b78a4658190e6527
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Currently the findSubGraph is being invoked
and causing additional calls to the database by backing
a tree backed vertex and slowing the performance of GET ALLs
Original intention of both of them was to pre fetch depth 0, 1, and 2
at once so we don't have to get them at each depth but since
that was not done right there is extra amount of time
After the aai-uri migration to ensure all vertexes
have the aai-uri and also to make sure they are unique across graph
we don't need to traverse a vertex to find the parents to build aai-uri
it was done previously when there was no aai-uri to derive the uri of a
given vertex and its not necessary anymore so there would be performance
improvements of vserver when there are a lot of relationships
Currently the edge labels are retrieved for each vertex a
and b and the performance of the GET with relationships will be
propotional to the GET request and how many cousin edges it has
and the more cousin edges there are the more slower the response time
will be as for each cousin vertex its trying to get the edge in between
so the code is modified to only go to the database for the edge label
when there are multiple edge labels (cousin edges) between a and b
If there are only one edge label and its a cousin vertex then we
can use the edge rule to be able to figure out the edge label
Improve PUT on the cloud region by modifying the getEdgesBetween
method which currently was retrieving all the parent
child edges between a and b and then only using the first edge
The traversal itself was too complicated and was costly in terms of
database retrieval and calls and optimized the code to utilize the
edge information so we can modify the query to db at runtime
based on the information provided so when a 10000 vservers under a
tenant adding a new vserver under tenant would be slow because of the
old query performance as it was taking some time there but with this
optimization, its only spending at most a millisecond or 2 in that
method
Also noticed that when a PUT operation takes place, the method
calls the related objects to create a dmaap event which was in turn
calling the findParents and actually utilizing the parents to create the
dmaap event and would spend quite a lot of time here because of the
expensive call of the findParents in this case we need those vertexes
So optimized the code so based on a given vertex, we have the aai-uri
and the newly added metadata uriTemplate to break the aai-uri into
its parent aai-uri and grand parent aai-uri and so forth
With this breakdown, we can get the list of aai-uris which are parents,
grandparents and then use the aai-uri to look them up which is O(1)
lookup time due to the fact they are unique indexes
The time it takes when doing a traversal to find the parents is
propotional to the number of edges but this will be optimistic
Another area which was improved was the json path execution of the
edge rules so when the edge rules get loaded into memory it creates a
document object, it utilizes the jsonpath to query information about
the edge rules but the only thing here is each time it gets called
the query gets invoked and uses jsonpath to retrieve the edge rules when
we can cached them based on the filter so that the user executed and if
the filter is the same as before, the expected edge rules will return
the same
Too much time was spent making the query and retrieving and building the
edgerules
So a cache is a perfect way to optimize this part
Issue-ID: AAI-1987
Change-Id: Ieb8237de3fd31136ceac14bf4a8216a7ab3b7179
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
where on create the values should be
the same but it ends up being different sometimes
Issue-ID: AAI-1832
Change-Id: Ia8cfb75a5812e6b59f8000a820cf3605ab17eb2b
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Issue-ID: AAI-1831
Change-Id: Ifcadf1caa0f7764c759997f10f3f789b1a702872
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Issue-ID: AAI-1463
Change-Id: Ibdd3803dd825342d54dfa1b008f1a8c2d78d6198
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Issue-ID: AAI-1654
Change-Id: I118b0d94099c7f986303fc9dd9e5dae5144b4bbb
Signed-off-by: LaMont, William (wl2432) <wl2432@us.att.com>
|
|
|
|
Change-Id: Ifa94277e74486bc2086ce5cad5077d59cdbf0f29
Issue-ID: AAI-1595
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Change-Id: I52a88526180acde91c6d9818d446e22ce175244d
Issue-ID: AAI-1569
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
|
|
|
|
|
|
Change-Id: If5ac08fa880d911bbe4f6115f98ea194fb9029cf
Issue-ID: AAI-1568
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Change-Id: I7a2beeede4cb8303b7f9801532a651895cbce389
Issue-ID: AAI-1566
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Change-Id: Ideacc3d44016f20700b2758aed35c8a552b39916
Issue-ID: AAI-1565
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Change-Id: If7d53a2f8c5199e9634e36a4ab018a78affb65f8
Issue-ID: AAI-1567
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
|
|
|
|
Change-Id: I2634a375c4b2a371b33dcb6dd2d3aa21cfe54297
Issue-ID: AAI-1558
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Adding a private constructor to hide the implicit public constructor.
Change-Id: Id6ded8cf328843c8e77fc652391f5c5edc80aa47
Issue-ID: AAI-1578
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Change-Id: Ib5d939c99fc4fb9845f06e787b3915640acfce3e
Issue-ID: AAI-1575
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
|
|
Issue-ID: AAI-1536
Change-Id: If1cc9291e28dd0381115a0bf6c5a44faa7fdbe01
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|
|
Fix use try-with-resources issues
Issue-ID: AAI-1368
Change-Id: I267df61915ac1596cc8645c62ccf43eb04fd7ac5
Signed-off-by: Parshad Patel <pars.patel@samsung.com>
|
|
|
|
Issue-ID: AAI-1521
Change-Id: I34b801a1ec9525e6b1785914f8d02f938cbf0ee7
Signed-off-by: Arindam Mondal <arind.mondal@samsung.com>
|
|
Issue-ID: AAI-1525
Change-Id: I34e8618223c5ca4aeefbc37dc148b556877f444e
Signed-off-by: Mohamed Asgar Samiulla <sammoham@in.ibm.com>
|
|
Integrate the aai-core into using the aai-schema-ingest
library to be agnostic to the schema changes
Remove any references to aai-schema dependency in aai-core
Reorder the components so the aai-schema-ingest is first installed
Moved the edge rules to the aai-schema as they are linked to schema
Rework the generation of the aai-schema to using aai-schema-ingest library
Also remove the yaml and html folders as they get generated on the fly
So when maven pushes the aai-schema jar, the jar contains the generated
yaml, html and xsd files at runtime due to the gerrit limit of filesize
Issue-ID: AAI-1455
Change-Id: I87ecd9eb2fc96a09d3a6399955637674f6e7fb21
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
|