Elastic amends Elasticsearch Python client so it won't work with forks then blocks comments

'We have labelled this as an enhancement' says engineer


Elastic has modified the official Python client for its Elasticsearch database not to work with forked versions, and closed the GitHub issue to comments.

Elasticsearch is a database manager and analytics engine, often used for log analytics. The elasticsearch-py client has over 202,000 downloads and is described as the "official low-level client for Elasticsearch. Its goal is to provide common ground for all Elasticsearch-related code in Python; because of this it tries to be opinion-free and very extendable."

It is also used as a library by Elasticsearch DSL, a high-level library for running Elasticsearch queries.

Elasticsearch was an open-source product, but in January changed its licensing in response to what the company saw as unfair usage by public cloud platforms, AWS in particular. AWS forked Elasticsearch, before the licence change, to create the Open Distro for Elasticsearch, which later evolved into OpenSearch, which had its 1.0 release last month. Casualties of this corporate battle include open-source developers who contributed to Elasticsearch but now feel let down.

Developers have now picked up on a quiet change to the elasticsearch-py source, which checks that the database is Elastic's product and not a fork. "If there is no X-Elastic-Product HTTP header in the response or if the X-Elastic-Product HTTP header value isn't Elasticsearch raise an error," is one of the changes noted.

"It's disappointing to see this :-( You're forcing us as bystanders in a battle to choose sides," said Lars Holm Nielsen, product manager for an open-source project called Invenio used for research data management.

"We develop an Open Source product that could likely easily work with both Elasticsearch or OpenSearch and then the users can choose for themselves if they want Elasticsearch or OpenSearch… This and other behaviours from Elastic really does not give me any confidence in Elastic and what you might do in the future. And don't blame it all on Amazon – you've already changed the server license, you didn't have to make this move."

Philip Krauss, senior engineering manager at Elastic, responded: "Amazon OpenSearch is a different product. And while there is some shared history, there are already many differences that cause real confusion and issues."

A further comment on the issue was deleted and the thread has now been locked.

The same thing has happened with the .NET Connector for Elasticsearch, leading to error messages like "The client noticed that the server is not a supported distribution of Elasticsearch." When users complained, Elastic's Steve Gordon, senior software engineer, said that "the recommendation is to upgrade to the latest default distribution of Elasticsearch, which is free to use under Elastic License v2… we have labelled this as an enhancement since it affects only unsupported client and server combinations. In supported configurations, the change is not breaking. The intent here is to make this incompatibility explicit by failing fast to avoid consumers incorrectly assuming they are running in a supported configuration which is not tested and may not function as expected."

Another change is that the Java client for Elasticsearch has been switched to the Elastic License.

Over in the OpenSearch community, this topic has caused some anxiety. "What should opensearch do about all the connectors and bindings for the different programming languages currently available? A lot of them are already integrating anti-competitive measures as it has been reported," said one user.

The licensing is a different matter than the product check. Elastic said: "Our client libraries remain licensed under Apache 2.0, with the exception of our Java High Level Rest Client (Java HLRC). The Java HLRC has dependencies on the core of Elasticsearch, and as a result this client library will be licensed under the Elastic License. Over time, we will eliminate this dependency and move the Java HLRC to be licensed under Apache 2.0."

Licensing these clients under Apache 2.0 (as is the case with the Python and .NET clients) is not sufficient for use with OpenSearch if the code blocks connection, although it does mean that the clients can easily be forked and modified.

Elastic may be hoping that the momentum behind the official release, along with its own contributions, will be sufficient that the open-source alternative cannot keep up. ®


Other stories you might like

  • Cheers ransomware hits VMware ESXi systems
    Now we can say extortionware has jumped the shark

    Another ransomware strain is targeting VMware ESXi servers, which have been the focus of extortionists and other miscreants in recent months.

    ESXi, a bare-metal hypervisor used by a broad range of organizations throughout the world, has become the target of such ransomware families as LockBit, Hive, and RansomEXX. The ubiquitous use of the technology, and the size of some companies that use it has made it an efficient way for crooks to infect large numbers of virtualized systems and connected devices and equipment, according to researchers with Trend Micro.

    "ESXi is widely used in enterprise settings for server virtualization," Trend Micro noted in a write-up this week. "It is therefore a popular target for ransomware attacks … Compromising ESXi servers has been a scheme used by some notorious cybercriminal groups because it is a means to swiftly spread the ransomware to many devices."

    Continue reading
  • Twitter founder Dorsey beats hasty retweet from the board
    As shareholders sue the social network amid Elon Musk's takeover scramble

    Twitter has officially entered the post-Dorsey age: its founder and two-time CEO's board term expired Wednesday, marking the first time the social media company hasn't had him around in some capacity.

    Jack Dorsey announced his resignation as Twitter chief exec in November 2021, and passed the baton to Parag Agrawal while remaining on the board. Now that board term has ended, and Dorsey has stepped down as expected. Agrawal has taken Dorsey's board seat; Salesforce co-CEO Bret Taylor has assumed the role of Twitter's board chair. 

    In his resignation announcement, Dorsey – who co-founded and is CEO of Block (formerly Square) – said having founders leading the companies they created can be severely limiting for an organization and can serve as a single point of failure. "I believe it's critical a company can stand on its own, free of its founder's influence or direction," Dorsey said. He didn't respond to a request for further comment today. 

    Continue reading
  • Snowflake stock drops as some top customers cut usage
    You might say its valuation is melting away

    IPO darling Snowflake's share price took a beating in an already bearish market for tech stocks after filing weaker than expected financial guidance amid a slowdown in orders from some of its largest customers.

    For its first quarter of fiscal 2023, ended April 30, Snowflake's revenue grew 85 percent year-on-year to $422.4 million. The company made an operating loss of $188.8 million, albeit down from $205.6 million a year ago.

    Although surpassing revenue expectations, the cloud-based data warehousing business saw its valuation tumble 16 percent in extended trading on Wednesday. Its stock price dived from $133 apiece to $117 in after-hours trading, and today is cruising back at $127. That stumble arrived amid a general tech stock sell-off some observers said was overdue.

    Continue reading

Biting the hand that feeds IT © 1998–2022