Friday, September 14, 2018

Facebooks new SapFix tool uses AI to automatically fix bugs in code


Facebook has unveiled a new tool for developers, which aims to automatically fix bugs. Called SapFix, it uses Facebook’s AI to help generate fixes for identified bugs, which are then proposed to engineers for approval and deployment to production. In a post, developers Yue Jia, Ke Mao, and Mark Harman write that SapFix is designed to operate independently, without Sapienz, which is Facebook’s “intelligent automated software testing tool”. It was noted that the tool was unveiled at F8, and has already been deployed in production.  

The post notes “The process starts with Sapienz, along with Facebook’s Infer static analysis tool, helping localize the point in the code to patch. Once Sapienz and Infer pinpoint a specific portion of code associated with a crash, it can pass that information to SapFix, which automatically picks from a few strategies to generate a patch.” In order to address “high-firing” bugs, SapFix is able to to create patches that can either fully or partially revert the codes that caused the bug. For compex crashes, it can generate patches by checking outs its collection of templated fixes, which are created by human engineers based on previous fixes. In the event that the templates don’t work, SapFix will try a mutation-based fin. In this fix, it will perform small code modifications to the abstract syntax tree. It will make adjustments to the patch until it finds a potential solution. 

The team aims to share the SapFix with the engineering community later, with the aim of boosting the production and stability of new code for companies and research organisations.

Facebook Twitter Google+ WhatsApp StumbleUpon Pinterest Addthis

MAXIT INTERNET

BLOGGER

CD DVD RW

DELL

DOWNLOAD

FTP Server Linux

HACK

HARD DRIVE

HOW TO WORKIN

HARDWAER

INTERNET

INTERNET CAFE

LAPTOP

LENOVO

LINUX

Additional configuration for Samba Server (Part 2)  

BSNL/Airtel/Idea using Huawei E156G 3g Wireless USB Linux 5   

Basic File Extensions    CHANGING AN ACCOUNT EXPIRATION DATE   

Configure Linux as a Router   

Configure SAMBA Server (Part-1)   

Configure VNC server   

Configure Yum Server (Part-1)   

Configure yum server for Client machine (Part 3)   

Configuring Samba as a Standalone Server (Part 3)  

Connecting ftp Server with Anonymous User Part 5  

Create ftp account with Shared directory Part 3  

DHCP Server Configuration Part 2  

DHCP Server Configuration Part-1  

DHCP Server Configuration Part-3  

Enabling FTP Services in Yum Server (Part 5)  

FTP Server Configuration Part 1  

FTP Server How to Change In Primary DNS Server Part 2  

HTTP Client side configuration (Part 4)  

How to Vsftpd conf files Parameter Part 6   

LINUX FILE SYSTEM STRUCTURE  

Linux User Administrtion  

Linux as a Router configuration for Client Machine   

Linux client machine FileZilla FTP Client Part 4  

Local Yum Server (Part 2)  

Modifying Existing User Information  

Primary DNS Server Configuration Part-1  

Primary DNS Server Configuration Part-2    

Primary DNS Server Configuration Part-3  

Remove Linux From Your Pc Safely and restoring your MBR  

Sharing & Accessing Samba Share (Part 4)   

Speeding up your internet connection under Linux and Windows   

THE ROOT FILE SYSTEM   

VNC Server Configuration

LINUX LAB

Linux as a Router

MOTHERBOARD

Mobile

NETWORKING

REDHAT 5

REGISTRY EDTOR

RESET BIOS PASSWORD

SAMBA Server Linux

SERVER

SERVER CONFIG

SOFTWAER

VNC server Linux

Window 10

Window XP

Follow by Email

MAX-IT INTERNET

MAX-IT INTERNET
TIPS AND TRICKS