Coccinelle archive on
 help / color / Atom feed
From: Markus Elfring <>
To: Julia Lawall <>
Cc: Coccinelle <>
Subject: Re: [Cocci] Working with pipes for parallel SmPL data processing?
Date: Tue, 11 Jun 2019 09:50:07 +0200
Message-ID: <> (raw)
In-Reply-To: <alpine.DEB.2.21.1906102257030.2636@hadrien>

Am 10.06.19 um 23:00 schrieb Julia Lawall:
> On Sun, 9 Jun 2019, Markus Elfring wrote:
>> Hello,
>> The Coccinelle software supports also a variant of parallel data processing
>> after the parameter “--jobs” was passed.
>> It is nice when it works to distribute analysis on source files to some processors.
>> Unfortunately, undesirable software behaviour can be observed if a database
>> like “PostgreSQL 11.3-7.1” would be used in such a system configuration.
>> Thus I imagine that it can be occasionally appropriate to perform desired
>> parallel data processing by the usage of a detailed pipeline instead.
>> How do you think about another application for this kind of
>> inter-process communication?
> When you use -j,

with a value bigger than one

> you fork processes that thus the child processes write to
> a different region of memory than the parent process.

This can be.

But such forked processes have got access also to copied data
from the the parent process.

> I don't have any interest in connecting Coccinelle to a database,

I am curious if any other users of your software can adjust
the corresponding development interests.

> so I'm not going to spend any time on debugging your issue.

I hope that collateral software evolution can happen if more advices
will be taken better into account from existing software documentation.

The data storage is working already if known database connections
would be performed only by a single process (instead of background processes).

> Maybe you can use a hashtable,

I would find an other data structure more helpful for the storage
of analysis results from parallel source code processing.

> then use merge in a finalize,

Thanks for such feedback.

> and the write the information to the database in the parent thread.

This is also my software development idea for working with a detailed
process pipeline.

> The use of merge is illustrated in eg tests/merge_vars.cocci

I would about the detail that a test source file is empty here.

I find the usage of Coccinelle's merge functionality unclear at the moment.
Can such an area become better documented?

Cocci mailing list

      reply index

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-09 17:19 Markus Elfring
2019-06-10 21:00 ` Julia Lawall
2019-06-11  7:50   ` Markus Elfring [this message]

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Coccinelle archive on

Archives are clonable:
	git clone --mirror cocci/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 cocci cocci/ \
	public-inbox-index cocci

Newsgroup available over NNTP:

AGPL code for this site: git clone public-inbox