Also moved all creation logic that is required to run at cluster startup into PrelertInitializationService.
Original commit: elastic/x-pack-elasticsearch@453ba3efa3
* Add result_type field to bucket
* Query and delete buckets/records by result_type
* Add a filter to the ElasticsearchBatchedDocumentsIterator subclasses for result_type:bucket
* De-type Influencers, BucketInfluencers and Category Definitions
* Revert de-typing CategoryDefinition
* Resolve merge errors after rebase
Original commit: elastic/x-pack-elasticsearch@65605432e8
In c++ the results are built all together under a bucket hierarchy.
This buckets was written out and java would read it and split the
bucket into its parts: the bucket itself, its records and its
influencers.
During the migration, the bucket started being persisted as a whole,
including its records and influencers.
This commit is changing this by modifying the way results are written
in c++. This way, the java and c++ results writing/reading are in sync.
To achieve this, the change involved writing records and influencers as
top level results from c++. In addition, they are written as an array
object in order to allow the java side to persist them in a bulk
request.
* Fix bucket counting in results processor
Original commit: elastic/x-pack-elasticsearch@feadf3f887
Elasticsearch will now attempt to spawn a controller daemon called simply
`controller` when it starts up, but ours was called `prelert_controller`.
For consistency it makes sense to remove the prefix from all our programs.
Original commit: elastic/x-pack-elasticsearch@d06714b231
* Make close job a master node action
The close job action now:
- Is a master node action
- Sets the job status to CLOSING
- Waits for the job status to change to CLOSED before it responds
JobLifeCycleService picks up on a job status change to CLOSING and
closes the job. At the end, it sets the job status to CLOSED.
* Assert job status is closed after close in integration test
This also correctly passes an ActionListener to JobManager.setJobStatus
in order to ensure the job status request has completed and to properly
propagate failures.
Original commit: elastic/x-pack-elasticsearch@1546c77fca
The PID used needs to be the PID of autodetect's parent proecss. The parent
is of course the controller daemon rather than the JVM.
Original commit: elastic/x-pack-elasticsearch@607481e1e2
* Added a setting that determines the maximum number of jobs that can run on a single node.
* Fail to start autodetect process if a user attempts to start more jobs than is allowed on a single node.
* Prevent concurrent data write, flush and close operation to the autodetect process.
Original commit: elastic/x-pack-elasticsearch@aca15fd51c
QueryPage now requires a ParseField in the constructor, which is used for the name of the array of results. I considered putting an enum of different field names in QueryPage itself, but it seemed better to keep the field name local to each respective object.
hitCount was also renamed to count, and getters updated appropriately.
Finally, added a static helper to throw the ResourceNotFoundException, just to make life easier/more consistent.
Closeselastic/elasticsearch#359
Original commit: elastic/x-pack-elasticsearch@9ba42ad4a1
Putting the various endpoints back to their plural form (and adjusting Java class names as necessary).
Original commit: elastic/x-pack-elasticsearch@5c8f3c7341
Also uploads the pack zip to the nas instead of the elasticsearch plugin.
The cpp build can be disabled with `-Pxpack.cpp.build=false`
Original commit: elastic/x-pack-elasticsearch@1efb1b2e7e
* Add scheduler status filter to jobs endpoint
* For scheduled jobs set the initial scheduler state
* Add status filter to job endpoint
Original commit: elastic/x-pack-elasticsearch@c7ed1627e2
In the same vein of GetBucket/GetBuckets and GetCategory/GetCategories.
This one was a bit more involved, since previously GetJobs didn't support
configuring the various metrics. So now all metrics can be configured when
requesting both a single job, or a range of jobs. It also unifies the request
body handling between the two and adds POST handlers.
And similar to the other refactorings, the SingleDoc response is gone in
favor of always returning an array of hits.
Original commit: elastic/x-pack-elasticsearch@ac47bb9bf6
This change moves the kibana app to a `kibana` directory at the root of the repository and adds gradle tasks to build the kibana app as part of `gradle check`. The kibana build can be muted by running `gradle check -Pxpack.kibana.build=false`
Original commit: elastic/x-pack-elasticsearch@f6ebb2d62b
These classes are no longer needed. They used to be
necessary in order to handle compressed data and sending
data to multiple jobs. Compressed data is now handled
by elasticsearch and multi-job upload is no longer supported.
Original commit: elastic/x-pack-elasticsearch@08a9f29855
* Remove DataCounts and ModelSizeStats from Job
* Delete unused ElasticsearchJobDetailsMapper
Conflicts:
elasticsearch/src/main/java/org/elasticsearch/xpack/prelert/job/persistence/ElasticsearchJobDetailsMapper.java
elasticsearch/src/test/java/org/elasticsearch/xpack/prelert/job/persistence/ElasticsearchJobDetailsMapperTests.java
* Add missing mappings for DataCounts
Fixes yaml test failures
* Add test to assert revert a model snapshot sets DataCounts.latest_record_timestamp
* Resolve merge errors
* Add NORELEASE for persisting dataCounts in cluster update
Original commit: elastic/x-pack-elasticsearch@46099d4db6
This change moves the Java code from `/java/apps/engine-node` to `/elasticsearch` so it matches the structure required by X-Pack. This will make it easier to get the gradle build working correct and building the full Pack zip.
Original commit: elastic/x-pack-elasticsearch@2fd6539e85
The `git clean` we used to do at the beginning of the build used to take
care of this, but due to long paths on Windows we can no longer use this
Original commit: elastic/x-pack-elasticsearch@3210c7507b