Sabitlenmiş Tweet
Tamas Cservenak
8.1K posts

Tamas Cservenak
@cstamas
OSS freak. Proximity, (Nexus, former Proximity 2), Maven... Java OSS development for developers. @[email protected] @cstamas.bsky
Denmark Katılım Mart 2007
2.3K Takip Edilen522 Takipçiler

Maveniverse NEWS:
BOM Builder Plugin 1.0.1 is out: github.com/maveniverse/bo…
Toolbox 0.3.3 is out (new Mojos for checking dependency excludes and "dirty tree" -- unfiltered, un-transformed): github.com/maveniverse/to…
Have fun!
#maven #maven3
English

Unified API to invoke Maven as in "cli", "forked", "resident" and more to come is merged (and replaces old MavenCLI of course): github.com/apache/maven/c… #maven #maven4 @ASFMavenProject
English
Tamas Cservenak retweetledi

What happens if your CPU gets something wrong? If it wakes up one day and decides 2+2=5?
Well, most of us will never have to worry about that. But if you work at a company the size of Google, you do, which is why this paper on "mercurial cores" is so fascinating.
What the authors report--and supposedly this is common knowledge at the hyperscalers--is that a couple cores per several thousand machines are "mercurial." Due to subtle manufacturing defects or old age, they give wrong answers for certain instructions. These can cause all sorts of impossible-to-diagnose issues. Some rare problems at Google that were traced back to bad CPUs include:
- Mutexes not working, causing application crashes
- Silent data corruption
- Garbage collectors targeting live memory, causing application crashes
- Kernel state corruption causing kernel panics
What makes CPUs go bad? It's very hard to tell. The authors posit that issues are becoming more frequent as CPUs get more complex, but there aren't solid numbers behind that. There are certainly strong relationships between frequency, temperature, voltage, and bad CPU behavior--most mercurial CPUs only cause problems under very specific conditions, but those conditions vary from CPU to CPU. Age is another source of problems, as older CPUs are more likely to exhibit problems.
Bad CPUs are an especially serious problem because they're very hard to detect. If cosmic rays flip bits in storage or on the network, that can be detected through error coding. But there's no analogy for a CPU that allows cheap online verification of its correctness. Instead, the best detection techniques involve monitoring for symptoms. If a core exhibits exceptionally high rates of process crashes or kernel panics relative to its fellows, that's a strong indication something is wrong with it. For the most critical applications, the authors propose triple modular redundancy--redoing each of its computations on three cores and majority-voting a reliable result.
More than anything, this paper is a call to action--letting everyone know that CPUs can fail. So now, if you ever find a bug you can't diagnose, you can blame the CPU! 🙂

English
Tamas Cservenak retweetledi

Maveniverse Toolbox 0.3.2 is out with "new trees", check them out. Makes easier to comprehend a structure of the project or to figure out issues with it...
mvn eu.maveniverse.maven.plugins:toolbox:0.3.2:help -Ddetail
#maven #maven3 #maveniverse
English
Tamas Cservenak retweetledi

This morning the second day of the informal Ecofin was held in Budapest.
Not only was the traditional press conference not organised, but journalists were not even allowed into the press room to work.
This is the first time I have seen something like this.
Congrats @HU24EU !
English

Next POM format is to be done in en.wikipedia.org/wiki/Brainfuck 🤣
English

You are fed up with XML? Maybe sick of "verbose XML POMs"? Try first official Maven 4 extension for alternate POM formats: github.com/apache/maven-h… #maven #maven4
English

@naziralnik This is not a port of polyglot-maven (that has kotlin). We started with hocon, but next is to look into porting those, maybe.
English
Tamas Cservenak retweetledi

@tbroyer Oh, okay, sorry for the confusion: I meant by "nothing changes" as whether component is Plexus XML defined or JSR330, does not matter. This also means that components.xml with lifecycle mapping were not a thing before 3.3.4 as well.
English

@cstamas Fwiw, LifecyclePhase was added in Maven 3.3.4: github.com/apache/maven/c…
English
Tamas Cservenak retweetledi

@tbroyer From Maven perspective nothing changes: you just make a component from Plexus DI XML defined one into JSR330 defined one. This should work from Maven 3.1+ (since Sisu index is in place and used)
English

@cstamas What's the minimum Maven version this is compatible with?
(i.e. if I migrate my plugin to it, how does it –or not– affect compatibility?)
English

@bcrow Yup, not that this is "groundbreaking", I just wanted to have something to point all the people asking about it...
English
Tamas Cservenak retweetledi

@gsmet_ Yup, same stands, this is merely to remove the xml (move from plexus to sisu)
English

@cstamas Nice post! With the XML approach, I needed to have extensions set to true when using the plugin. Is it still the case with this approach?
English








