diff --git a/lib/CF/Schema/Result/Socket_view.pm b/lib/CF/Schema/Result/Socket_view.pm
index e36f12e11f7652751748b89b0695bac277143573..aeaed9d7e9f6be50305e45dc59638be0f27a2b02 100644
--- a/lib/CF/Schema/Result/Socket_view.pm
+++ b/lib/CF/Schema/Result/Socket_view.pm
@@ -12,7 +12,6 @@ __PACKAGE__->table('sockets_view');
 __PACKAGE__->add_columns(
     qw(
         is_member
-        is_alive
     ),
 );
 
diff --git a/sql/6/up.sql b/sql/6/up.sql
new file mode 100644
index 0000000000000000000000000000000000000000..232523e5e4fb0a33479031179385577acd11f0ea
--- /dev/null
+++ b/sql/6/up.sql
@@ -0,0 +1,8 @@
+drop view "sockets_view";
+create view "sockets_view" as
+    select "sockets".*,
+    "users"."roles" like '%member%' as "is_member"
+from "sockets"
+left join "users" on ("sockets"."user_id" = "users"."id")
+where ("sockets"."keepalive"+'100 s'::interval) > now()
+;