It all started with the idea of making the built-in flexible search console more convenient for a developer. It is common to find ourselves forgetting the name of an attribute or its type. Imagine my surprise when I found the traces of this feature in the HAC source code. SAP left them unfinished and probably abandoned. For example, for the Impex console, suggestions are basically implemented and almost ready, but for some reason, they have not been finished and not enabled.

In this article, I’m filling this gap and document how to enable autosuggestions in the Impex console. Additionally, I introduce my custom solution for Flexible Search suggestions and autocomplete. Read More »

SAP Commerce released version 2011 of Commerce Cloud. As usual, the version number refers to November 2020. How big is this update? Should we rush with the upgrade? What new will the update of the platform bring you?  Read More »
Today I am sharing three great open source projects:
  • FlexibleSearch builder (Java Library),
  • HAC VCS Info (extension),
  • jHac (a console app for automating HAC operations).
  • Read More »
    Being at Crossroads, Take a Perspective View
    I often interview strong Java developers who were offered a move to SAP Commerce. What I see regularly is uncertainty and sometimes reluctance to learn SAP Commerce.

    Some say they believe they won’t be able to use the knowledge and experience anywhere else in their careers.

    Some of them see this move as ‘boxing’ themselves in. 

    It is generally believed that focusing on the niche product may cause taking a lot of time in the future to get re-trained for a different product or technology if the current market conditions change and SAP Commerce will fade in relevance and popularity. Proprietary platforms come and go, and developers feel afraid to find themselves with useless knowledge and meaningless experience. 

    Even though I generally share the view and arguments above, I also believe that SAP Commerce is a special case. What I want to leave you, then, is with the explanation of why I think so. 

    Read More »
    This quick post is about how to troubleshoot issues with Cronjob, specifically on the situation when a cronjob is not started. Read More »
    Product data integration is an essential component of almost all e-commerce solutions. For large and frequently updated catalogs, there are common challenges related to concurrent data modifications. In this article, I explain one of them: how to update the products and categories in a safe and reliable manner. Read More »
    If you need to create complex behavior from the simulated virtual users in the load test, the built-in capabilities of out-of-the-shelf products may not be sufficient. For example, parsing output formats from an API response to create the formatted inputs for an API request may be difficult for a particular load testing tool, but a quick and easy exercise for a high-level programming language.One of the possible ways is using designated libraries to write our own simple load generator from scratch. For our project, this approach has proven to be a faster and reliable way to address the concurrency issues in the SAP Commerce Cloud custom code.  In this article, we explain how to write a load generator from scratch with Python.  Read More »

    When the coronavirus outbreak happened in China, it boosted local e-commerce as many stuck at their homes forced to buy their goods online. Sales of fresh food on JD.com reportedly jumped 215% during the 10-day period and counting. The ability to serve a large number of customers is growing every year. The traffic may be doubled in a week. How to make sure your system is capable to serve high traffic demand? In today’s article I’m sharing my experience with Tsung, a high-performance testing framework.

    Read More »

    The SAP Commerce Cloud APIs are highly customizable, and even smallest changes in configuration, data model or Java code may result in performance degradation. Performance testing is especially important in cases where concurrency may be the source of the problem. To recognize and fix such issues timely, it is recommended to perform regular performance testing, ideally integrated into the build and deployment pipelines. This article is devoted to Apache JMeter, one of the well-known tools for automated (and) performance testing.

    Read More »

    Any SAP Commerce Cloud setup is based on a multi-server setup organized as web cluster. This product comes with clustering support out of the box since very early versions. However, many years in a row, it is still one of the most challenging topics. 

    JGroups is an essential component of SAP Commerce Cloud. It is widely used as an embedded solution for distributed messaging and eventing in the cluster. It is hard to say that it is underdocumented or it has some quirks that nobody knows how to encounter. However, almost every large project stumbles with JGroups. This article is aimed to shed some light on the internals of the SAP Commerce Cloud clustering and JGroups.  

    Read More »