diff --git a/src/box/sophia_index.cc b/src/box/sophia_index.cc
index 69c1a16792113c02fc2b1f3561121c84de46b225..7e1c2811bfe2c76fa1c1e1b8a18e887d5a43f189 100644
--- a/src/box/sophia_index.cc
+++ b/src/box/sophia_index.cc
@@ -163,6 +163,8 @@ SophiaIndex::endBuild()
 size_t
 SophiaIndex::size() const
 {
+	tnt_raise(ClientError, ER_UNSUPPORTED,
+	          "SophiaIndex", "size operation");
 	return 0;
 }
 
diff --git a/test/box/sophia.test.lua b/test/box/sophia.test.lua
index 685f6cc80c9f9d031b1f1d0430941c69be28bdbd..c57ef7f913e17dd237fc3da8ecfeefbe8c08dbfa 100644
--- a/test/box/sophia.test.lua
+++ b/test/box/sophia.test.lua
@@ -72,4 +72,15 @@ box.rollback()
 s:select{10000}
 s:drop()
 
+---
+--- gh-456: Sophia: index size() is unsupported
+---
+
+box.cfg{}
+s = box.schema.create_space('tester',{engine='sophia'})
+s:create_index('sophia_index', {})
+s.index[0]:len() -- exception
+box.error()
+s:drop()
+
 os.execute("rm -rf sophia")