2/2/2012

Continuous Rollback

Filed under: — Aviran Mordo

Continuous delivery is the next step in continuous integration. When you work in continuous delivery, the application deployments should be very easy and automated. As easy as we can deploy, rollbacks should be easy to perform too, and also automated. However automated deployments and rollback can cause unexpected problems if you are not careful. One such problem brought our production system down. Here is what happened.

At Wix.com we built an automated deployment system based on Artifactory and Chef. Our system works like this. Every few minutes Chef script checks to see if the last version in Artifactory is the one that is deployed on production. If the artifact version is different than the one deployed on production, Chef will get the war from Artifactory and deploy it to all the appropriate machines.
Now what happened to us was that we decided that Artifactory should have a replica in case once instance goes down, so we installed an old back-up of Artifactory on a secondary location and created a script to replicates the master to the slave. Now you can probably guess what happened.

We had a bug in the script where we point the master to be the slave and the slave to be the master. Now the backed-up Artifactory was from last month. So what happened was that the replication went the wrong way and both repositories became rolled back to a state that is a month old.

Since Chef monitors the repository and found that the versions of the artifacts are different than the one in production, it deployed ALL the artifact, causing our entire production system to go back in time (yay, we invented a time machine).

You can guess how fun it was to bring back the whole production system back to the future.

Now of course we are in the process of putting some safeguards in place so it won’t happen again.

10/3/2011

Java one keynote - Live report from San Francisco

Filed under: — Aviran Mordo
Java one logo

This year I have the pleasure to attend the Java one convention and I’m currently present at the Java one first keynote.
There are literary hundreds of people here at the Hilton’s grans ballroom

09:57
Announcing NeBeans IDE 7.1 Beta

Announcing JavaFX Scene builder

Announcing JavaFX developer preview for MacOS X

Announcing JavaFX 2.0 general avilability - Download at javafx.com/download

09:40
Java 9 - Some thought about the future of Java 9
Selft tuning JVM
Improved native integration
Big Data
Reification
Tail calls/Continuation
Meta-Object Protocol
Multi-Tenency
Resource Management

09:06 - Oracle announces a new product - NoSQL database. The Oracle NoSQL database is a scalable key-value scalable high performance system.

Oracle announces NoSQL database

Filed under: — Aviran Mordo

At the JavaOne convention Oracle announced a new NoSQL database system.

The NoSQL database is a key-value store. Later today Oracle will formally announce this new product

8/3/2011

I Just Found Java Compiler Bug

Filed under: — Aviran Mordo

I just found a bug in Java compiler (java version “1.6.0_24″), where the compiler allows to return null in a method signature that return int.

Here is an example of the code that should not compile.


public int foo()
{
return true ? null : 0;
}

Of course the “true” can be replaced with any boolean expression.

The java compiler compiles this code without problem, however at runtime you’ll get NullPointerException.

7/31/2011

Oracle Announces Availability of Java SE 7

Filed under: — Aviran Mordo

Oracle announced the availability of Java Platform, Standard Edition 7 (Java SE 7), the first release of the Java platform under Oracle stewardship.
The Java SE 7 release is the result of industry-wide development involving open review, weekly builds and extensive collaboration between Oracle engineers and members of the worldwide Java ecosystem via the OpenJDK Community and the Java Community Process (JCP).
Java SE 7 delivers:

  • Language changes to help increase developer productivity and simplify common programming tasks by reducing the amount of code needed, clarifying syntax and making code easier to read. (JSR 334: Project Coin)
  • Improved support for dynamic languages (including: Ruby, Python and JavaScript), resulting in substantial performance increases on the JVM. (JSR 292: InvokeDynamic)
  • A new multicore-ready API that enables developers to more easily decompose problems into tasks that can then be executed in parallel across arbitrary numbers of processor cores. (JSR 166: Fork/Join Framework)
  • A comprehensive I/O interface for working with file systems that can access a wider array of file attributes and offer more information when errors occur. (JSR 203: NIO.2)
  • New networking and security features
  • Expanded support for internationalization, including Unicode 6.0 support
  • Updated versions of numerous libraries
  • Strong backward compatibility of Java SE 7 with previous versions of the platform preserves the skill sets of current Java software developers and protects Java technology investments.

6/30/2011

Oracle’s Java plan trapped in last century

Filed under: — Aviran Mordo

Oracle’s roadmap for Javas 7 and 8 shows it recognizes the world is pulling away and leaving Java with last-century concepts and ideals. Java 7 is meant to set the foundation for a cloud-friendly platform, but the real cloud-ready features won’t make an appearance until Java 8 in 2013 at the earliest.

While Larry and company can’t be blamed for the years of stagnation suffered by both the platform and language under Sun Microsystems, the problem faced isn’t that Java lacks the technology to work nicely in the cloud: the problem is, as ever, one of perception.

Java is either not “enterprise” enough for cloud computing – apparently lacking the required widgets – or it’s too enterprisey and therefore not cool enough to join the likes of Ruby and Python.

3/29/2011

Flash Website Creator Wix Raises $40 Million

Filed under: — Aviran Mordo

Israeli startup Wix, which allows users to build flash websites, has just raised $40 million in Series D funding led by Insight Venture Partners and DAG ventures, with Benchmark Capital, Bessemer Venture Partners and Mangrove Capital Partners participating in the round. This brings Wix’s total
funding to $61 million.

Founded in 2006, Wix provides a simple mechanism for anyone to create Flash-based websites. Users can customize their Wix websites with a drag and drop editing tool and pretty templates, making the site user-friendly for users who may not be tech savvy. The site makes its money from a freemium model where users pay for extra customization and design features.

Since I joined Wix as a Server Group Manager Wix has gone some major changes in development methodologies we are forming the state of the art development process which will let us do a very quick development cycle, building very advanced, cool frameworks and tools and trying to be one of the leading hi-tech companies in Israel.

My team consists of the best and brightest developers and although recruiting people for the core server team is very challenging since we only look for the best developers, it makes the working environment very challenging and productive where everybody of the developers has a major role in all aspects of the development process. (Now here comes the sales pitch) By the way I’m always looking for the brightest and best developers so if you think you are a Java guru you are welcome to submit your resume to (jobs at wix dot com) or send me a note.

So if you are looking for a free website builder check out Wix.com

3/17/2011

Oracle Closes Sun.com Domain

Filed under: — Aviran Mordo

Oracle is killing Sun.com, the online home of Sun Microsystems and one of the oldest dot-com domain names.

An entry on the Oracle’s OTN Garage says that sun.com will be decommissioned on June 1.

The closure comes after Sun’s new owner, Oracle, moved most of the content on BigAdmin, OpenSolaris.com, and some sections of Sun Developer Network to the Systems Admin and Developer Community of OTN.

That apparently leaves just a hardware compatibly list, which OTN Garage said engineers are “working on a solution” for. Once that’s been relocated to the happy fields of Redwood Shores, Sun’s domain will be turned off.

12/14/2010

JCP Approves JSRs for Java SE 7, Java SE 8, Project Coin and Lambda

Filed under: — Aviran Mordo

After one week’s extension (due to the US Thanksgiving holiday), the JCP Executive Commitee for Java SE and EE has now approved the following four JSRs:

* JSR 334: Small Enhancements to the Java Programming Language (”Project Coin”)
* JSR 335: Lambda Expressions for the Java Programming Language (”Project Lambda”)
* JSR 336: Java SE 7
* JSR 337: Java SE 8

8/13/2010

Oracle sues Google for patent infringement

Filed under: — Aviran Mordo

Oracle Corp. said Thursday it has filed a patent and copyright-infringement lawsuit against Google Inc.

Oracle said in a statement that Google’s Android system for mobile phones infringes on its patented Java technology.

Google spokesman Andrew Pederson said the company can’t comment because it has not yet reviewed the lawsuit.

In its complaint Oracle said Google’s Android operating system software consists of Java applications and other technology. As such, it infringes on one or more parts of seven different patents - something Google should know, Oracle argues, because it has hired former Sun Java engineers in recent years.

Oracle is seeking an injunction to stop Google from further building and distributing Android, plus higher monetary damages for willful and deliberate infringement.

4/11/2010

“Father of Java” Resigns from Sun/Oracle

Filed under: — Aviran Mordo

James has been a Father for the Java community and a great innovator in the software industry. The final words appear on his blog:

Yes, indeed, the rumors are true: I resigned from Oracle a week ago (April 2nd). I apologize to everyone in St Petersburg who came to TechDays on Thursday expecting to hear from me. I really hated not being there. As to why I left, it’s difficult to answer: just about anything I could say that would be accurate and honest would do more harm than good. The hardest part is no longer being with all the great people I’ve had the privilege to work with over the years. I don’t know what I’m going to do next, other than take some time off before I start job hunting.

Without a doubt, this has been an aftermath of the Sun-Oracle Merger, and he doesn’t seem to be happy with the level of freedom he had been getting lately. From what has been heard, he was not convinced with the Oracle’s strategies for the future of Java.

4/10/2010

Serious New Java Flaw Affects All Current Versions of Windows

Filed under: — Aviran Mordo

There is a serious vulnerability in Java that leaves users running any of the current versions of Windows open to simple Web-based attacks that could lead to a complete compromise of the affected system. Two separate researchers released information on the vulnerability on Friday, saying that it has been present in Java for years.

The problem lies in the Java Web Start framework, a technology that Sun Microsystems developed to enable the simplified deployment of Java applications. In essence, the JavaWS technology fails to validate parameters passed to it from the command line, and attackers can control those parameters using specific HTML tags on a Web page, researcher Ruben Santamarta said in an advisory posted Friday morning.

Powered by WordPress