The entire update will fail. From Apex Developer Guide - Apex Transactions:
All DML operations in a transaction either complete successfully, or if an error occurs in one operation, the entire transaction is rolled back and no data is committed to the database. The boundary of a transaction can be a trigger, a class method, an anonymous block of code, a Visualforce page, or a custom Web service method.
If your code starts in a batch which then fires a trigger, it's treated as one transaction. It's exactly the same as updating a record from the UI which causes a trigger to fail - an error will be presented to your screen. If your batch fails, you can see what was the reason in
Setup->Environments->Jobs->Apex jobs in the
Status Detail column.
It mostly depends from how are you performing your database operations. By DML language or Database Apex Class?
If you want to partially commit records to the database with omitting these which cause the trigger to fail, use methods from a Database Class like
allOrNone parameter specifies whether the operation
allows partial success. If you specify
false for this parameter and a
record fails, the remainder of the DML operation can still succeed.
This method returns a result object that can be used to verify which
records succeeded, which failed, and why. If the parameter is not set
or is set
true, an exception is thrown if the method is not