Comments (7)
PR #72 fixes this.
from spring-data.
As can be seen on the following page, all the automated tests pass:
https://haqer1.github.io/arangodb-spring-data-rational/docs/branch/optimization_for_edges_and_graph_traversal/auto-testing/modified/surefire-report.html
For comparison, the same report for upstream:
https://haqer1.github.io/arangodb-spring-data-rational/docs/branch/optimization_for_edges_and_graph_traversal/auto-testing/original/surefire-report.html
P.S. I.e., there are no issues in PR #72 (the PR for this issue), only optimizations (making stuff better).
from spring-data.
As can be seen on the following page, all the automated tests pass:
[...]
P.S. I.e., there are no issues in this PR, only optimizations (making stuff better).
Program testing can be a very effective way to show the presence of bugs, but is hopelessly inadequate for showing their absence. - Edsger Wybe Dijkstra
I don't think it's a good idea to remove the type information from @Edge
classes. It's the same for them as for @Document
classes:
@Edge("relationships")
public class Relationship {
@From
private Individual from;
@To
private Individual to;
}
public class Child extends Relationship {
private boolean isAdopted;
// ...
}
public class Friendship extends Relationship {
private Instant friendsSince;
// ...
}
Such a use case is then no longer supported.
from spring-data.
Everybody at ArangoDB has had enough of weird examples. If there is a automated test that is valid, & doesn't pass with PR 72, check it into the repository.
Such a use case is then no longer supported.
False: PR #72 (the PR for this issue) doesn't touch children of a class that declares @Edge
annotation (which do not declare @Edge
themselves). Thus, if Spring Data ArangoDB supported that, this PR wouldn't affect it.
Child & Friendship above are not usable for traversal[1], which means they are useless as @Edges
[2]. And if they are used as equivalents of @Document
, then those kinds of workflows work just fine, as can be seen, for example, in
EdgeConstructorWithFromToParamsTestEntity in
https://github.com/haqer1/arangodb-spring-data-rational/blob/2.1.7.1-rational/src/test/java/com/arangodb/springframework/core/mapping/ArangoMappingTest.java
Test for which (edgeConstructorWithFromToParams, line 1060) passes:
https://haqer1.github.io/arangodb-spring-data-rational/docs/branch/optimization_for_edges_and_graph_traversal/auto-testing/modified/surefire-report.html
P.S.
[1] ArangoDB doesn't traverse children of an @Edge
. And even if such absurd got added to it, i might consider coding for it the same as for Documents in the future: but right now, it's not supported, & nobody needs this kind of thing anyway, so it can have type info in child classes for all i care.
[2] Which in turn really means, IMHO, this should even be reported to developers at run-time as an initialization error: but i don't have time for that. I only want clean records in my DB.
P.P.S. So, i hope nobody wastes anybody's time. If there is a bug, one can prove it's presence with an automated test case. At present, all tests pass, so this is good to go.
P.P.P.S. If this is sabotaged as for @Documents
, you know my answer. I'll use a rational implementation anyway (until this non-sense is cleaned up at ArangoDB):
https://github.com/haqer1/arangodb-spring-data-rational/
In fact it's already in 2.1.7.1-rational.
from spring-data.
I think a selective storage of type information is the wrong approach. This is neither easy to understand nor easy to maintain for a developer using Spring Data without having all the background knowledge.
from spring-data.
I think a selective storage of type information is the wrong approach.
@mpv1989: Are you insane? There is no "selective storage of type information" in PR #72. All classes with a declared @Edge
annotation can, should, & really must be persisted without fully-qualified class name stored in the DB record. Do you understand the meaning of the word "all" (as opposed to "some")? Or is it all a blur to you?
As i've mentioned (#71 (comment)), PR #72 is already in
https://github.com/haqer1/arangodb-spring-data-rational/ since 2.1.7.1-rational release (because (even though i still can't believe it's happened) i had expected shady business again).
Given this expected madness, i've also added this shameless irrationality now in ArangoDB spring-data to the list of issues optimized by arangodb-spring-data-rational:
https://haqer1.github.io/arangodb-spring-data-rational/#edge
If Mark Vollmary does not give a reasonable explanation for this very suspicious, irrational, & really crazy behavior, & if he doesn't push into the git repository a realistic test case which wouldn't pass with PR #72 merged, he too will be a self-certified "agitateur professionnel" (again borrowing a phrase from Emmanuel Macron) (and this has to be done within a reasonable time frame, i.e. within days (at most within a week), not next century or in 10 years)). If you there is no realistic test case for which fully-qualified class name is required in the DB records, then it's totally insane to store this stuff in the DB:
https://haqer1.github.io/arangodb-spring-data-rational/#inefficiencies_optimized
P.S. @MrPieces: So this is the 3rd PR of mine that Mark Vollmary has sabotaged. And unlike last time, although 18 days had passed before his irrational closing of PR #72 and this issue, this time he hasn't even been able to "produce" a perverted example justifying the sabotage (or have it produced by somebody). And each time his behavior has been more and more suspicious, & this 3rd time it has been totally insane. As i've mentioned before, there has to be a really big reason for all this shady business. And this question should interest ArangoDB's senior management, owners, & venture capital providers (among others)...
from spring-data.
well, @haqer1 ...If there is one thing I learned in my life, then that people who scream are not the ones I listen to.
from spring-data.
Related Issues (20)
- Batch insert Docs or Edges with designated collection name HOT 1
- [DE-684] confuse about some code HOT 5
- Feature: allow embedded entities instead of resolvers HOT 2
- [DE-805] A way to check if a LazyLoadingProxy entity has been resolved HOT 2
- How can I get it to use the ArangoDBAsync driver? HOT 4
- spring boot- failed to load ApplicationContext HOT 1
- How to insert a large amount of data with good performance? HOT 2
- [DE-682] unify exception handling HOT 3
- Link to "Getting Started" is broken HOT 1
- DefaultArangoConverter and TypeInformation quality HOT 2
- [Query]Arangodb nested attribute sorting spring data HOT 2
- com.arangodb.ArangoDBException: Response: 400, Error: 1553 - bind parameter '@col' has an invalid value or type HOT 10
- CRUD Repository save and saveAll should return fetched entity instead of original HOT 1
- Support spring boot 3.2.0 HOT 1
- Version 4.0.0 (latest release) is not compatible with driver versions >7.1.0 HOT 1
- @CreatedDate fields not populated when inserting objects with user IDs. HOT 4
- Version 4.0.0 (latest release) is not compatible with driver versions >7.1.1 HOT 2
- [DE-771] Issue with running queries in stream transaction HOT 11
- Error when using VST Protocol HOT 2
- Call SimpleArangoRepository.findAllById concurrent with trigger ConcurrentModificationException exception HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-data.